c++遗基础知识拾

  在C里面,&有几种意思
  
  1、当两个连在一起的时候。&&。代表的是“并且”的意思
  
  例如a==1&&b==2.就是当a=1并且b=2的时候!
  
  2、表示引用,例如int a; int &ra=a; //定义引用ra,它是变量a的引用,即别名
  
  3、&表示两种运算符,其中一种表示取值运算符,一种是按位与
  
  (3.1)、取值运算符
  
  int a=1;
  
  int *p=&a; //其中&a表示的就是把a中的地址取出来,然后赋给指针变量,也就是说&a表示的是变量a在内存中的地址。你可以使用printf函数输出这个地址
  
  (3.2)、按位与运算符
  
  计算规则:如果两个数都都为真(或为1),其结果为真,如果两位数中有一位为假(或为0)者结果为假
  
  比如a&b;表示把a和b进行二进制的按位与运算
  
  比如8&10,其中8的二进制是0000 1000,而10的二进制是0000 1010,因此
  
  0000 1000(十进制8)
  
  & 0000 1010(10进制10)
  
  结果为0000 1000(就是10进制的8)
  
  因此8&10的结果为8
  
  ===================<c++基础知识拾遗之&>===================================
  
  ----------------------------------<||运算符从左向右,截断判断>----------------------------------------------------
  
  // coutTEst.cpp : 定义控制台应用程序的入口点。
  
  //
  
  #include "stdafx.h"
  
  #include "iostream"
  
  using namespace std;
  
  int _tmain(int argc, _TCHAR* argv[])
  
  {
  
  int a = 0;
  
  int b= 0;
  
  if(((a =3) || (b=3)))
  
  {
  
  a++;
  
  b++;
  
  }
  
  cout<<a<<endl;
  
  cout<<b<<endl;
  
  return 0;
  
  }
  
  //输出结果为4、1
  
  ========================<||运算符从左向右,截断判断>=============================
  
  ------------------------------------------<&&运算符从左向右,全部判断>------------------------------------------------
  
  // coutTEst.cpp : 定义控制台应用程序的入口点。
  
  //
  
  #include "stdafx.h"
  
  #include "iostream"
  
  using namespace std;
  
  int _tmain(int argc, _TCHAR* argv[])
  
  {
  
  int a = 0;
  
  int b= 0;
  
  if(((a =3) && (b=3)))
  
  {
  
  a++;
  
  b++;
  
  }
  
  cout<<a<<endl;
  
  cout<<b<<endl;
  
  return 0;
  
  }
  
  ============================<&&运算符从左向右,全部判断>====================================
  
  c++基础知识拾遗,码迷,mamicode.com
  
  c++基础知识拾遗

猜你喜欢

转载自www.cnblogs.com/zhenhua1618/p/12729404.html