char *a;a="abc"与char*a;*a="abc"char *a="abc"有什么区别吗?

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/27 21:23:04
char *a;a=

char *a;a="abc"与char*a;*a="abc"char *a="abc"有什么区别吗?
char *a;a="abc"与char*a;*a="abc"char *a="abc"有什么区别吗?

char *a;a="abc"与char*a;*a="abc"char *a="abc"有什么区别吗?
1,char*a;*a="abc" 是错误的, *a是字符,不是字符串.
2,另外两句完全一样.虽然编译能通过,但是你这句本身就是错误的:字符串定义应该是 const char *a = "abc"; 因为字符串储存在不可读内存中,所以c语言中字符串的的返回值是 const char*.
3, 如果要得到能读写的字符串请使用字符数组: char a[] = "abc"