qq873950124
qq873950124
2016-11-08 13:55
采纳率: 60.4%
浏览 829
已采纳

小白 字符指针赋值啊啊啊

#include
int main()
{
char a[100],*b=a;
b="dadas";
b=a;

printf("%s",b);

}
这个为什么不行。。为什么这个可以
#include
int main()
{
char a[100],*b=a;

gets(b);
b=a;
puts(b);
puts(a);

}
不是一样的么

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • caozhy
    已采纳

    b="dadas";
    这个b是一个字符串常量的指针。
    你得用strcpy代替直接赋值

    点赞 评论
  • qq_36029003
    qq_36029003 2016-11-09 15:52

    首先你的数组a没有初始化肯定是打印不出什么的。里面的值是一些随机值。你试过第二个吗,按理说打印出来的也是乱码

    点赞 评论

相关推荐