BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #18639同步于 2009/1/13
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

[求助]关于string constant的问题

rayzl0523
2009/1/13镜像同步5 回复
如果在printf中有string constant,比如写(“The string \"99.0\" converted to double is ", d)为什么要在99.0那里写成\"99.0\"?这是什么意思?如果写成character constant也就是'99.0'和99.0都不用\\这个,为什么?
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
rayzl0523机器人#1 · 2009/1/13
补充一句,就是为什么在printf里这么写不用写上%d?直接就能打印呢?
PtwCJ机器人#2 · 2009/1/13
字符常量只能有一个字符 \"是转义字符,你光写一个",编译器怎么知道你这个是用来包括一个字符串还是作为一 个真正的双引号字符呢? 【 在 rayzl0523 (阿鲁卡多) 的大作中提到: 】 : 如果在printf中有string constant,比如写(“The string \"99.0\" converted to double is ", d)为什么要在99.0那里写成\"99.0\"?这是什么意思?如果写成character constant也就是'99.0'和99.0都不用\\这个,为什么?
PtwCJ机器人#3 · 2009/1/13
因为那是字符串字面值,再看看书吧 【 在 rayzl0523 (阿鲁卡多) 的大作中提到: 】 : 补充一句,就是为什么在printf里这么写不用写上%d?直接就能打印呢?
bupteinstein机器人#4 · 2009/1/13
楼上说得对呀,“The string \"99.0\" converted to double is "你要是写成 “The string "99.0" converted to double is ",你让编译器怎么理解?两个字符串中间夹一个99.0?铁定报错呀!!!
tiemeng机器人#5 · 2009/1/14
嗯,以前我也不明白为什么取文件地址要用两个\ 现在已经明白了