开发者社区 问答 正文

关于char * ch指针和char ch [10]数组的区别

char ch1[10];
char * ch2;
如果现在要将一个c风格字符串赋给这两个对象,
void copy1(char ch1[10],char * temp)
void copy2(char ch2,char temp)
为什么后者可以直接ch2=temp而前者只能用strcpy?

展开
收起
a123456678 2016-03-23 13:41:25 2154 分享 版权
1 条回答
写回答
取消 提交回答
  • ch2是指针,所以=temp,其实做的是指针地址赋值而已,这样ch2也指向temp那一块内存

    而ch1是一个数组,你要给它赋值,就需要把内容复制到数组中,所以需要strcpy

    2019-07-17 19:10:48
    赞同 展开评论