41
成都创新互联公司主要从事成都网站设计、成都网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务港口,十载网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108
strp 是一个包含四个char*元素的指针数组
经过赋值,strp和str等效。
所以,BCD都是正确的引用
只有A, strp本身作为数组名,相当于char**, 而不是char*
42
这里面,C和D都是错的。
A 把HELLO1存到str1中,str1大小是7个字符,这个HELLO1也是7个,所以 可以
B str2有8个字符,把7个字符长度的字符串复制进去,是正确的。
C str3没有分配空间,属于野指针,直接strcpy复制HELLO3是错的
D str4这个指针指向常量字符串"string" 这个常量是不可以修改的 所以对它进行赋值,也会崩溃。
char arr[]="hello world";这条语句的作用是定义了有12个字节的字符数组,并且初始化为以上字符串的内容。注意数组的长度只要12个字节,你再调用strcat(arr,t),就越界了,应该将
char arr[]="hello world";改为
char arr[50]="hello world";
//
string[500]="abcdefg";
//字符串"abcdef"赋值给字符数组string[500]元素,先说string[500]已经越界.
单单string[500]能存放字符,却要串字符串赋值给.错误.像说定义初始化.定义要进行赋值.用string.hstrcpy()函数,"abcdefg"复制字符串string.代码:
#include
#include
int
main()
{
char
string[500];
//
string[500]="abcdefg";
strcpy(string,"abcdefg");
//字符串量赋值给字符数组return
0;
}
1.for语句的一般格式
for([变量赋初值];[循环继续条件];[循环变量增值])
{
循环体语句组;}
2.for语句的执行过程
执行过程如图5-1所示。
(1)求解“变量赋初值”表达式。
(2)求解“循环继续条件”表达式。如果其值非0,执行(3);否则,转至(4)。
(3)执行循环体语句组,并求解“循环变量增值”表达式,然后转向(2)。
(4)执行for语句的下一条语句。
3.说明
(1)“变量赋初值”、“循环继续条件”和“循环变量增值”部分均可缺省,甚至全部缺省,但其间的分号不能省略。
(2)当循环体语句组仅由一条语句构成时,可以不使用复合语句形式,如上例所示。
(3)“循环变量赋初值”表达式,既可以是给循环变量赋初值的赋值表达式,也可以是与此无关的其它表达式(如逗号表达式)。
例如,for(sum=0;i=100;i++)
sum
+=
i;
for(sum=0,i=1;i=100;i++)
sum
+=
i;
(4)“循环继续条件”部分是一个逻辑量,除一般的关系(或逻辑)表达式外,也允许是数值(或字符)表达式。