C语言基本教程(二)数据范例、变量和运算符(12)
2. 数组变量的赋值
(1) 整型数组和浮点数组的赋值
譬喻:
main()
{
int m[2][2];
float n[3];
m[0][0]=0, m[0][1]=17, m[1][0]=21;/*数组元素赋值*/
n[0]=109.5, n[1]=-8.29, n[2]=0.7;
.
.
.
}
(2)字符串数组的赋值
譬喻:
main()
{
char s[30];
strcpy(s, "Good News!"); /*给数组赋字符串*/
.
.
.
}
上面措施在编译时,碰着char s[30]这条语句时,编译措施会在内存的某处留出持续30个字节的区域, 并将第一个字节的地点赋给s。当碰着strcpy( strcpy 为Turbo C2.0的函数)时, 首先在方针文件的某处成立一个"Good News!\0" 的字符串。个中\0暗示字符串终止, 终止符是编译时自动加上的,然后一个字符一个字符地复制到s所指的内存区域。因此界说字符串数组时, 其元素个数至少应该比字符串的长度多1。
留意:
1. 字符串数组不能用"="直接赋值, 即s="Good News!"是不正当的。所以应分清字符串数组和字符串指针的差异赋值要领。
2. 对付长字符串, Turbo C2.0答允利用下述要领:
譬喻:
main()
{
char s[100];
strcpy(s, "The writer would like to thank you for"
"your interest in his book. He hopes you"
"can get some helps from the book.");
.
.
.
}
(3)指针数组赋值
譬喻:
main()
{
char *f[2];
int *a[2];
f[0]="thank you"; /*给字符型数组指针变量赋值*/
f[1]="Good Morning";
*a[0]=1, *a[1]=-11; /*给整型数数组指针变量赋值*/
.
.
.
}