字符串表示方法:
char str[20];
char *ch;
赋值操作:
1:定义的时候赋值
char str[20]=“what pity”;
char *ch=“how are you”;
2;用字符串复制函数:
strcpy(str,”what pity”);
但是对于用指针表示的字符串变量用复制函数赋值会出现问题,需要先申请内存。
ch=malloc(20);
strcpy(ch,”how are you”);
当不使用赋值函数的时候直接赋值却可以:
char *ch;
ch=“heihei”;
无论何时都别忘记使用指针表示字符串的时候要先申请内存 再来进行复制函数赋值
比如在结构体当中的字符串变量
typedef struct str
{
char *str;
}pstr,*Pstr;
Pstr strname;
strname=(Pstr)malloc(sizeof(pstr));
{判断申请}
strcpy(strname->str,“hello”);
后来又发现,不仅仅复制函数要申请,当使用gets scanf等这些输入函数的时候也需要申请内存。