共有回帖数 0 个
-
主要代码:
char * str = "?";
if(!str)
{
char *str = (char*) malloc (100);
if(!str) return -1;
str[0] = 'a';
}
printf("%cn",*str);
system("pause")

我理解的是,应该会报错,至少他是重定义了。至于打印出来为什么是 ? 而不是 a ,这段代码,我不敢多说什么。但是
char * str = "?";
if(!str)
{
char *str = (char*) malloc (100);
if(!str) return -1;
str[0] = 'a';
}
printf("%cn",str[0]);
system("pause")
把printf改成打印str[0] 我认为会打印出 a 但是,还是? 不信你们去试试。这里我就不理解了,malloc 我又没有free 掉,而且程序又没有结束,为什么打印不出来。
楼主 2015-09-02 20:21 回复
Copyright © 2010~2015 直线网 版权所有,All Rights Reserved.沪ICP备10039589号
意见反馈 |
关于直线 |
版权声明 |
会员须知