C语言中字符串个数的问题

来源:百度知道 编辑:UC知道 时间:2024/06/07 00:43:13
“\\\\1234\\\\n”在内存中占用的字节数是?
其中转义字符也占字节数吗?
请详细讲一下 谢谢
如果转义字符不占字节的话 那转义字符"\n"在这个字符串中起作用吗 这题答案是11

#include <stdio.h>
#include <stdlib.h>
void main()
{
printf("%s\n","\\\\1234\\\\n");
printf("bytes=%d",sizeof("\\\\1234\\\\n"));
}
输出:
\\1234\\n
bytes=10
9个+一个字符串结束符。

两个反斜杠表示一个反斜杠字符,所以打出:
两个反斜杠 1234 两个反斜杠 一个字母 n
字符串结束符 "\0" 也占一个字节

#include "iostream.h"
void main()
{
char *a="\\\\1234\\\\n";
int n=sizeof(a);
cout<<n<<endl;
}

结果是4个字节

转义字符算一个,比如\\算一个,所以总共9个,再加上结束符应该是10个字节数

转义字符好象不占吧,应该是11字节,我以前学过不过很长时间了,不知道能不能帮到你