结构体成员 |
您所在的位置:网站首页 › struct数组的成员数 › 结构体成员 |
结构体成员是C类型的字符数组表示字符串时
c语言中没有字符串类型,只能使用字符数组表示字符串。 当定义结构体时,成员是字符数组时,在外部给该成员赋值,不能使用 结构体把变量名.成员名 = "ssss"; 上述表达式是错误的,定义成员是数组,直接使用成员名表示的是该数组的首地址,赋值时只能给他地址,不能给他常量。直接打印输出结构体成员数组名,输出的是地址。 可以使用字符串函数 strcpy 给字符数组(相当于字符串)复制一个字符串。 struct { char *name,address[20]; int age; }student4;//使用这种直接定义结构体变量,不能继续定义其他的结构体变量 // student1.name[20] = "www"; 结构体成员为数组时,使用结构体变量.成员名 访问的是数组名(数组的首地址),它是一个地址, // 不能将常量赋值给他,对结构体数组赋值可使用strcpy函数 //将strcpy(stringa, stringb) 将stringb的首地址赋值给stringa的首地址 strcpy(student1.address,"zhe shi addr"); student1.age = 10; // 给字符数组赋值只能赋值单个字符 student1.address[20] = 'a'; printf("%d\n",student1.age); printf("%p\n",&student4); printf("%s\n",student1.address); printf("%c\n",student1.address[20]); 结构体成员是指针时直接打印输出结构体成员指针,输出的是指针指向地址的内容。
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |