首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

字符\0的有关问题

2013-02-18 
字符\0的问题#include stdio.hint main(void){char c1 \0printf(**%c**, c1)return 0}代码如上

字符\0的问题


#include <stdio.h>

int main(void)
{


char c1 = '\0';

printf("**%c**", c1);

return 0;
}

代码如上
输出的是
** **
中间一个空格
有没有可能改变c1的值,使得中间不包含空格...
****
我把c1赋值为NULL
输出还是带空格的..
[解决办法]
引用:
引用:ascii 90+个可见字符 其他的是不可见字符 除了几个转义字符的行为是确定的之外 其他的输出什么都是依赖平台的 输出 \0 \1 \2 这些输出什么 看环境
就是说 char型肯定会输出东西..
那string型是char字符串加一个'\0',那是不是可以说
"abc"相当于 'a', 'b', 'c'这三个字符再加上……

c语言 没有string类型 
"abc" 字符串字面值 是一个字符数组 一共4个元素 这些元素的值就是你说的 'a' 'b' 'c' 和 '\0'
[解决办法]
你可以把代码改一改,输出到文件中,然后以二进制查看之。
我不过是把输出通过管道直接重定向到二进制查看工具,这样就能看到输出的二进制。
可以看到,0(00)是有输出的,在标准输出中“不可见”,非“空格”。

热点排行