S1E6 关于%d的问题
教学视频中都死%d,实际自己操作时候都让我替换%lu,这是什么情况 教学视频中是错误的,换成 %lu 就对了提示很明显,sizeof 返回的是 unsigned long 类型,应该用 %lu
其实就是sizeof()函数定义的时候返回类型是unsigned long 所以编译器希望你前面用%lu和它匹配 实际用%d应该也可以只不过应该有类型转换这里代码下面黄线应该能运行吧 本帖最后由 jackz007 于 2021-11-1 17:32 编辑
意思是 sizeof() 表达式的数据类型是 unsigned long ,对应的格式描述符是 "%lu",建议用 "%lu" 替换 "%d",当然,这只是语言开发环境给出的提示,在本例中,你完全可以选择忽视,并没有什么原则性的问题,也不会导致错误发生。视频中的说法往往具有更加广泛的适用性。 lei1996 发表于 2021-11-1 17:24
其实就是sizeof()函数定义的时候返回类型是unsigned long 所以编译器希望你前面用%lu和它匹配 实际用%d ...
可以的 人造人 发表于 2021-11-1 17:21
教学视频中是错误的,换成 %lu 就对了
谢谢 人造人 发表于 2021-11-1 17:22
提示很明显,sizeof 返回的是 unsigned long 类型,应该用 %lu
谢谢
页:
[1]