c语言编程经典例题,c语言编程经典例题及解析
在C语言程序中,将变量赋值为-1,再用printf打印,为什么输出一个很大的数?
前两天,我在我的圈子里发了一个小问题,刚好和题主的问题很吻合,相关的C语言代码如下,这段程序会输出什么呢?
在分析这个问题之前,先说些题外话。有程序员认为研究这样的代码没有意义,无异于孔乙己的“茴”字有几种写法。
这个问题其实并不是我空想出来的。
最近,我的一个同事被他的C语言程序 bug 困扰了好几天,始终无法找到问题究竟出在哪里,于是找我,我看到他的代码居然混用无符号变量和有符号变量,于是就提醒他注意这个方面,后来发现果然是这个原因。他的问题涉及到比较复杂的项目,完整的复述一遍不太现实,于是我把他的问题精简一下,就构成了上述C语言代码段。
事实上,很多公司招聘时,都有一些面试题或者笔试题看起来很怪异,很不符合标准的开发规范,于是有些程序员就认为做这样的面试题是完全没有意义的,甚至觉得做这些题目是一种侮辱。
其实换个角度想想,这些题目很能考察一个人的基本功,它们很可能来自公司内部的某个项目的某次重大 bug。C语言是一门极其重视基本功的编程语言,这些题目很能查漏补缺。
现在来考虑上面这段C语言代码,我们编译并执行它,得到了下面的输出:
C语言程序的输出出乎了一些朋友的预料,-1 容易理解,255 是怎么回事呢?
[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。转载请注明出处:http://www.wnpsw.com/post/15304.html