为了账号安全,请及时绑定邮箱和手机立即绑定

各位大神们,为什么不可这样printf(“x%%y=%d\n”,   1 );?

各位大神们,为什么不可这样printf(“x%%y=%d\n”,   1 );?

C
540Immortal 2017-10-20 14:16:13
各位大神们,为什么不可这样printf(“x%%y=%d\n”,   1 );?
查看完整描述

3 回答

已采纳
?
qq_莫非

TA贡献257条经验 获得超92个赞

因为你前面是%d,所以后面也就是1那个位置应该是一个int 类型的变量,但是你那个位置是常量1.是不可以的。

查看完整回答
3 反对 回复 2017-10-20
?
书旅

TA贡献238条经验 获得超101个赞

这个输出结果是   x%y=1,你这样写没错啊,当有两个%在一起时,输出结果中只显示一个%。不要问为什么,编译器运行结果就是这个。就像1+1=2,就是等于2,记住就行。如果你这个是这样printf("x%%y=%%d\n",1);输出结果就是   x%y=%d

查看完整回答
1 反对 回复 2017-10-20
?
onemoo

TA贡献883条经验 获得超454个赞

可以这样啊。

你是不是有地方打错了? 比如用了中文标点符号...

查看完整回答
1 反对 回复 2017-10-20
  • 540Immortal
    540Immortal
    谢谢你
  • 540Immortal
    540Immortal
    谢谢你
  • onemoo
    onemoo
    先别客气。不知道你明白这个问题了没有。 不过你采纳的那个答案说错了! 1是常量,但不管是常量还是变量,它们都是有类型的。1是整型常量,而且这样的整型常量默认类型就是int,所以你这个代码是没有问题的。 如果代码没法编译,那问题可能出在别的地方。
  • 3 回答
  • 0 关注
  • 1948 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信