本站首页    管理页面    写新日志    退出


[c++读书笔记]第六章
sunshine 发表于 2006/10/23 22:00:47

C++读书笔记 1.仔细想想f函数各语句的含义: void f(int x,int y)  //假设x=3;y=4; {        int j=x=y;//j=4,x=4,y=4        int *p=&++x;//正确,先x自加即时x+=1, 然后返回x的指针赋值给p;        int *k=&x++;//错误,x++ 不是一个左值(它不是存储在x里的值)通俗地说,x ++ 返回的是数值而不是一个变量,所以不能把指针赋给k;        int *q=&(x=x++);//正确,先计算x++ 在此例中得到6,然后赋值给予 x,最后把x 的指针赋给q        int *pp=&(x>y?x:y);//正确,根据地x与y的大小,返回指针给pp.        cout<<"*p="<<*p<<"   &p="<<p<<"x="<<x<<"   x="<<&x<<"*y="<<&y<<"   y="<<y<<'\n';        cout<<"*q="<<*q<<"   &q="<<q<<'\n'; } 注意:当一个变量申明说指针变量后,如上例中的p,,p表示它指向的地址,在上例中是x的指针,*p表示它指向的地址的内容,&p表示指针变量自身的地址。请不要混淆。 2.在c++中下溢、上溢和除零都不会抛出标准异常。 void f() {        int i=1;        while(0<i)i++;//当i超出最大的整数,会发生什么无定义,但一般是那个值被“卷回来”变成一个负数(我测试的结果是-2147483648)。类似的,除零的结果也是无定义的。        cout<<" i has become negative!"<<i<<"\n"; }

阅读全文(2009) | 回复(0) | 编辑 | 精华

发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)

 
«August 2025»
12
3456789
10111213141516
17181920212223
24252627282930
31

  公告

有一种鸟儿是永远关不住的
因为它的每片羽翼上都沾满了自由的光辉

方向:计算机视觉 人工智能 演化算法

 


  我的分类(专题)
  最近日志

  最新评论

  留言板

  链接

  Blog信息
blog名称:阳光海岸心
日志总数:166
评论数量:237
留言数量:-4
访问次数:1450900
建立时间:2006年6月2日



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.047 second(s), page refreshed 144754849 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号