Announcement

Collapse
No announcement yet.

[C/C++] giúp đỡ về phép ! trong C/C++

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • [C/C++] giúp đỡ về phép ! trong C/C++

    tình hình là lâu quá rồi chưa đụng đến phép ! trong C/C++ nên đã quên rồi
    các bạn cho mình hỏi nó có công dụng gì và tác dụng như thế nào vậy..

    ví dụ như x=10 thì (!x) ra kết quả là gì vậy

  • #2
    Search Google "Logical Negation Operator"

    Comment


    • #3
      !x là x == 0
      UIT SE O5

      Comment


      • #4
        !x tương đương với (x==0?x=1:x=0);
        “ Đơm hoa không kết trái thì có sao?

        Là cá thì nhất định phải bơi ư?

        Ai bảo cuộc đời là phải sống,
        Ai bảo đau khổ rồi cũng sẽ qua,
        Ai bảo bài hát là phải có dạo đầu,

        Phá vỡ ranh giới để tìm kiếm điều gì đó...”

        Comment


        • #5
          Originally posted by 11520579 View Post
          tình hình là lâu quá rồi chưa đụng đến phép ! trong C/C++ nên đã quên rồi
          các bạn cho mình hỏi nó có công dụng gì và tác dụng như thế nào vậy..

          ví dụ như x=10 thì (!x) ra kết quả là gì vậy
          ! là toán tử logic lấy bù (phủ định). Giá trị mà nó tác động đến biến giá trị sẽ hoặc là true (trong int là 1) hoặc là false (trong int là 0).

          x = 10 -> !x = 0;
          x = 0 -> !x = 1;

          trong C/C++, int cũng thể hiện kiểu bool, cụ thể:
          + là true nếu giá trị khác 0.
          + là false nếu giá trị là 0.
          Last edited by 11520317; 02-11-2012, 00:30. Reason: bổ sung
          Top Best Online - The Best Products Review Website

          Comment


          • #6
            chính xác là mình nghĩ biến x=10; ở đây hiểu là x có mang giá trị, khi dùng !x thì ý ám chỉ là phủ định-->x không có mang giá trị gì cả--> và trong kiểu int nó biểu thị bằng 0.
            ps: mình thấy dùng !x này trong xét điều kiện rẽ nhánh if() thì nó có nhiều ý nghĩa hơn :happy:
            Last edited by 11520176; 02-11-2012, 12:51.

            Comment


            • #7
              Originally posted by 10520225 View Post
              !x là x == 0
              Đơn giản mà chính xác.
              Originally posted by 12520527 View Post
              !x tương đương với (x==0?x=1:x=0);
              Toán tử ! không có thay đổi giá trị của toán hạng nha em. Giải thích như vầy rất dễ hiểu lầm.

              Comment


              • #8
                Originally posted by 11520317 View Post
                ! là toán tử logic lấy bù (phủ định). Giá trị mà nó tác động đến biến giá trị sẽ hoặc là true (trong int là 1) hoặc là false (trong int là 0).

                x = 10 -> !x = 0;
                x = 0 -> !x = 1;

                trong C/C++, int cũng thể hiện kiểu bool, cụ thể:
                + là true nếu giá trị khác 0.
                + là false nếu giá trị là 0.
                theo như bạn nói thì giả sử if(!x) với x là một số khác 0 thì giá trị của phép if đó là true phải không?

                Comment


                • #9
                  Originally posted by 11520579 View Post
                  theo như bạn nói thì giả sử if(!x) với x là một số khác 0 thì giá trị của phép if đó là true phải không?
                  x!=0 => if(x) <=> if(true)
                  => if(!x) <=> if(!true) = if(false)
                  -----------------------------
                  Mai Văn Khải
                  Software Engineering, University Information of Technology
                  a07d26eb5cbc98f77b36a461eb629456

                  Comment

                  LHQC

                  Collapse
                  Working...
                  X