当前位置: 代码迷 >> C语言 >> 想到一个傻傻的问题
  详细解决方案

想到一个傻傻的问题

热度:389   发布时间:2008-06-13 17:10:34.0
想到一个傻傻的问题
程序代码:
#include<stdio.h>
int main(void){
    char c[7]="abcdefg";
    printf("%s",c);
    return 0;
}

按照书上讲的,printf会一直输出直到'\0'
我试了几次,本以为会输出很多很多字符,可每次都只会多输出3-5个字符,
难道内存里面的'\0'会这么多?
搜索更多相关的解决方案: 内存  傻傻的  printf  字符  void  

----------------解决方案--------------------------------------------------------
#include<stdio.h>
int main(void){
    char c[7]="abcdefg";  //越界了,应该是 c[8]="abcdefg"
    printf("%s",c);
    return 0;
}
----------------解决方案--------------------------------------------------------
恩。。有些地方零是很多的。你可以用VC的调试功能来看看内存
----------------解决方案--------------------------------------------------------
果然有很多
----------------解决方案--------------------------------------------------------
  相关解决方案