第一题 一般赋值语句的概念和方法

void exe01()
{
  cout<<"第一题 一般赋值语句的概念和方法。"<<endl;
  //part 1
  int i,*pi,*pii;//整型变量,整形指针变量
  i = 100;//整形变量赋值
  int &yi = i;//引用赋值
  int ci[] = {123,32},cci[][2] = {213,21,435,234,12,96};//整形数组赋值
  pi = (int*)malloc(sizeof(int));//为整形指针变量自动分配内存
  pi = &cci[0][1];//为指针变量赋值
  pii = (int*)malloc(sizeof(int));
  pii = ci;//指针指向数组的首地址

  cout<<"yi: "<<yi<<endl;
  cout<<"pii: "<<pii<<"  *pii: "<<*pii<<endl;
  cout<<"*pi: "<<*pi<<"  *(++pi): "<<*(++pi)<<"  ++(*pi): "<<++(*pi)<<endl<<endl;

  pii = NULL;
  pi = NULL;
  free(pii);//指针不再被使用的话一定要释放,不然会造成内存泄漏
  free(pi);

 

  //part 2
  cout<<"//part 2"<<endl;
  int x = 3,y,z;//将x赋值为3
  x *= (y = z = 4);printf("x = %d/n",x);//不要把*=看成指针,那是乘以!x*y = 3*4 = 12

  z = 2;//此时x = 12 y = 4 z = 2
  x = (y = z);printf("x = (y = z), x = %d/n",x);//x = y = 4
  x = (y == z);printf("x = (y == z), x = %d/n",x);//x = (y == z)?1:0; 因为y = z = 2所以应该是1
  x = (y & z);printf("x = (y & z), x = %d/n",x);//y = z = 00000010;全1出1,y & z = 00000010;所以x = 2
  x = (y && z);printf("x = (y && z), x = %d/n",x);//(y!=0 && z!=0)?1:0;因为y = z = 2所以x = 1

  y = 4;//此时x = 1 y = 4 z = 2
  x = (y | z);printf("x = (y | z), x = %d/n",x);//y|z = 00000100|00000010 = 00000110 = 6
  x = (y || z);printf("x = (y || z), x = %d/n",x);//(y!=0 || z!=0)?1:0;因为y = 4 z = 2所以是1
  x = (y == z)?4:5;printf("x = (y == z)?4:5, x = %d/n",x);//5

}

 

以下是运行结果:

运行结果

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值