【发布时间】:2017-08-20 22:41:26
【问题描述】:
如何输出一个指针字符串,打印结果是“(null)”,就像输出一个char一样?
【问题讨论】:
-
不知道你在问什么。
char *str = "(null)";??? -
char str不是指针,但NULL是空指针宏。当您尝试使用%s打印str的内容时,您有未定义的行为,它需要一个 string(即,以 null 结尾的字符数组)。而对于char *str = "\0",首先不需要\0——只需将char *str = ""用于空字符串即可;其次,这不打印空格;它不打印任何内容(在格式字符串中的\n之前。) -
"我看不到输出,我认为这是一个空格。"不,它根本没有输出,因为你给了它一个长度为 0 的字符串。
-
谢谢你们!我只是想写一个类似strstr()的函数,但是我不知道返回一个指向main的字符串指针,返回值打印为“(null)”。
-
从 C 初学者书开始。