一般涉及到这两个用法的时候.都是指对字符串的使用,也就是char数组.
例如char *s="name";
用strlen(s);大小就为4;
但用sizeof(*s);大小就为5;
为什么会这样呢,
因为"name"实际上是由'n'+'a'+'m'+'e'+'/0'五个字符组成的字符串.
千万不要把"x",跟'x'搞错,
"x"由'x'和'/0'组成,
由于'/0'的ASCII码等0,所以.字符串数组可以用0付初值.
本文解析了在C语言中如何使用strlen()和sizeof()函数处理字符串。通过具体的例子解释了name这样的字符串是如何由'n'+'a'+'m'+'e'+'/0'这五个字符组成的,并说明了为什么对字符串使用这两种函数会得到不同的结果。
一般涉及到这两个用法的时候.都是指对字符串的使用,也就是char数组.
例如char *s="name";
用strlen(s);大小就为4;
但用sizeof(*s);大小就为5;
为什么会这样呢,
因为"name"实际上是由'n'+'a'+'m'+'e'+'/0'五个字符组成的字符串.
千万不要把"x",跟'x'搞错,
"x"由'x'和'/0'组成,
由于'/0'的ASCII码等0,所以.字符串数组可以用0付初值.
431

被折叠的 条评论
为什么被折叠?