77范文网 - 专业文章范例文档资料分享平台

C专家编程看书笔记(2)

来源:网络收集 时间:2021-01-20 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

C专家编程学习中的笔记

两个均是正确,仅一个字符序列。结合++的从右至左结合性,本人认为则j = ++(i++); 这个解释更合理。
现在人为加上括号,明确计算顺序,但是编译报错:invalid lvalue in increment;(在增量中无效的左值);反正只要后面表达式不正确,均会报此错(目前没能明白些错)。

int i = 3;
j = sizeof(i+++ ++i);正确
j = sizeof(i++ + ++i);正确
j = sizeof(i++ +++i);错误
j = sizeof(i+++++i);错误,因为最大一口策略,将会亦成((i++)++) + i;++++i,++(++i),i+++++,(i++)++均会报增量中无效的左值。
执行结果:j = 4; i = 3;因为sizeof()后面最终会是个int型的值,所以占四个字节;很值得注意的是,这不会改变i的值,这一点须牢记。

int i = 3;
q = ++i+ ++i;正确
q = ++i + ++i;正确
q = ++i +++i;错误
q = ++i+++i;错误,还是最大一口策略。
结果:q = 10,i = 5;又值得注意,我们可能会这样理解,第一个++i,用于计算q的结果会是4(先加再用),第二个i++,用于计算q的结果会是5,这样q = 9;但实际不是这样。
int i = 3,k = 3;
q = ++i + ++k;
结果是:q = 8;注意区分。

int i = 5;
m = i+++ ++i;正确
m = i++ + ++i;正确
m = i++ +++i;错误
m = i+++++i;错误
结果:m = 12,i = 7;这能不是很难理解。

int i = 0;
k = ++i+i++;
k = ++i + i++;
k = ++i+ i++;
k = ++i +i++;
以上格式均正确,最后结果 k = 2,i = 2。下面k = 4,而此处k = 2,有点难以理解。

int i = 2;
k = i+++i++;
k = i++ + i++;
k = i+++ i++;
k = i++ +i++;
以上格式均正确,最后结果 k = 4,i = 4。同时能够证明,比编译器是最大一口策略,+ 的优先级比 ++ 低。++是从右至左结合,如果这样理解的话,k = i + (++(i++)); 但实际不是这样,所以可以确定为最大一口策略。还值得注意的是 k = 4,从感觉上先计算i++,但这个表达式用于计算k的值是2(先用再加);这时i的值是3,再进行i++,用于计算k的值是3,此时i的值是4;如果这样k = 5。但实际不是这样,值得注意。

总结一下:
操作数如果都是先++,就先将两者++执行完再计算;如果是后++,就先将两者计算再执行++。其它情况正常进行。(这一点还是很难理解,只能做简单的总结,要深入思考为什么会这样,需要做更深的理解和深层次的程序运行实际情况的认识。)
最大一口策略,所以中间的‘+’只能接在前面操作数,或自行隔开,不能接在后面操作数前。

值得一提的是,由于经前的认识很多人会认为空格在c中多一个或者少一个,对程序无影响,此处我们可以看到,空格的力量(这也许是现在编译器更加智能化,能够自动识别一些程序员的思想)。所以,不要随意空格,要有良好的编程风格。

P66
这一页的结构体,让我做了一些测试,这过程中发现了一些

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库C专家编程看书笔记(2)在线全文阅读。

C专家编程看书笔记(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/1182054.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: