关于c字符串的困惑

关于c字符串的困惑

代码如下:
char *  str  =   " std " ;
puts(str);
以前老觉得,既然c里面关于字符串的机制是:字符数组,且数组名便是数组起始地址的指针名。那么如果我
puts( * str);
应该输出一个s字符才对。试了很多次都不对,今天猛然发现是我错了,错在用错了函数
putchar( * str);
会如我所想。所以,有时候,我们会按照自己的意愿去关注一个问题的一个方面,但是问题却得
不到解决这是因为我们一开始不经意就自己加了一些自认为正确但是错误的限定条件,puts就是
用来输出字符串的,你给他一个字符它肯定不买你的帐。

你可能感兴趣的:(关于c字符串的困惑)