解答Cpuzzles.pdfVIP

  • 4
  • 0
  • 约7.96千字
  • 约 4页
  • 2017-08-23 发布于浙江
  • 举报
解答Cpuzzles

解答C puzzles 2009/11/26: 对42-45进行了解答 2009/09/16: 对第25题补充了参考材料 完成35~41的回答 2009/09/xx: 修改过n次了:-P 1. sizeof的运算结果大多数情况下是无符号整形(具体与编译器有关),无符整形与有符号整型运算时, 要将有符号整形提升为无符号数。所以-1会成为非常大的整数,因而使得for循环没有执行。为了避免这种 问题,可以将TOTAL_ELEMENTS宏修改成如下: #define TOTAL_ELEMENTS (int)(sizeof(array) / sizeof(array[0])) 或者使用更为彻底一些的办法: #define sizeof (int)sizeof 2. 减号(-)不能作为函数名; 3. 不管continue是在while、for或do循环中,意思都是忽略剩余代码,重新进行循环条条判定(想一想, 如果continue连循环条件判定都可以省略掉,那岂不成了无限循环)。所以程序的输出是:1 4. 先是很多重复的hello-err,之后是重复出现的hello-out,然后按以上方式轮流重复出现。 原因:标准输出流stdout默认是行缓冲的,也

文档评论(0)

1亿VIP精品文档

相关文档