数组indexof方法 怎么给字符串数组赋值?
怎么给字符串数组赋值?
字符数组有两种赋值,单字符赋值和字符串赋值。
对于单字符赋值,数组元素可由数组下标或指针引用,例如:
char a[10]char ch=“a”For(I=0I<10i)a[I]=ch I//数组元素可由数组下标引用,以完成char*pfor(P=a P<10p)*P=ch//为相应元素赋值通过指针对数组进行
字符串赋值。可以在字符串中使用字符串操作函数。H头文件赋值,如:char a[10]strcpy(a,“abcdefgh”)sprintf(a,%s”,“abcdefgh”)
注意:定义数组时,可以同时初始化,但定义完成后,不能以初始化的形式赋值,例如:
char a[10]=“abcdefgh”//this可以是a=“abcdefgh”//这是错误的!A是数组的名称,它是一个静态数据:数组的第一个地址值可以看作是一个常量,不能再更改。
怎么把一个字符串赋值给字符数组?
Chars[20]s=“helo”此错误的原因是无法使用赋值语句将字符串常量直接赋给字符数组。Chars[20]charss[]=“Hello”s=SS错误,原因是:字符数组不能用赋值语句直接赋值给字符数组,即字符串副本(在C语言中,但在C的string类中,上述赋值是正确的)必须用strcpy()函数实现。正确的理由是,在声明数组变量时,要为它们打开空间并进行初始化,这符合C语言的语法。扩展信息:理解C语言1中的字符串赋值。指针赋值。上述示例可以正常执行并且容易理解。但是下面的方法有点难理解。通过程序的操作,我们可以知道:char*P=“Hello”这个字符串赋值方法完全没有问题。要理解这种赋值方法,我们必须首先理解双引号在这个语句中的作用。双引号主要做三项工作,分别是:(1)应用空格(在常量区域),存储字符串。(2) 在字符串末尾添加“0”。(3) 回信地址。这里返回的地址被分配给char*类型的指针变量p。2、 字符串直接通过字符数组赋值。程序如下:3。一些问题需要注意。将字符串赋给数组名(即数组第一个元素的第一个地址)是不正确的。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。