使用scanf给数组赋值时所想到的问题
char a[100]; //1scanf("%s",a); //2
printf("%s",a); //3
上面程序不会出错
char b[100]; //4
*b="abcd"; //5
printf("%s",b); //6
这样为什么就出错了呢 字符串不是也可以看成是数组么 第2行是以字符串形式给a数组赋值那我是不是可以说是把字符串从数组a的首地址开始依次赋予a数组 如果可以这样说 b本身就是b数组第一个元素的地址 将字符串abcd赋予b为什么会出错呢? 还是我从一开始的理解就错了? *b="abcd"; 为什么不能一次存入b[0],b[1].... ? 求教。
[ 本帖最后由 kd83kdi93 于 2011-10-14 23:32 编辑 ]