C程序两个字符串数组如何相互赋值?

两个字符串数组
char stu[],edu[];
edu[]={"good"};
stu=edu;
直接赋值报错
该怎么办?
谢谢大家~~

可以在定义的时候直接赋,就是这样:
char stu[]="good",edu[]="good";
或者是在后面用循环一个一个的赋,就是这样:
char stu[],edu[]="good";int i;
for (i=0;i<4;i++)
{
stu[i]=edu[i];
}
在定义后再给字符数组赋值的话必须用循环了,
有一个库函数可以执行字符串拷贝,我记得是strcpy(a[],b[])也是可以用的,可以把一个字符串的内容完全拷贝到另一个字符串那里
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-08-29
可以在定义的时候直接赋,就是这样:
char
stu[]="good",edu[]="good";
或者是在后面用循环一个一个的赋,就是这样:
char
stu[],edu[]="good";int
i;
for
(i=0;i<4;i++)
{
stu[i]=edu[i];
}
在定义后再给
字符数组
赋值的话必须用循环了,
有一个
库函数
可以执行字符串拷贝,我记得是strcpy(a[],b[])也是可以用的,可以把一个字符串的内容完全拷贝到另一个字符串那里
第2个回答  2019-04-06
用strcmp阿,不管长度是否相等都能用。
原型:extern
int
strcmp(const
char
*s1,const
char
*
s2);
用法:#include
功能:比较字符串s1和s2。
一般形式:strcmp(字符串1,字符串2)
说明:
当s1
s2时,返回值>0
即:两个字符串自左向右逐个字符相比(按ascii值大小相比较),直到出现不同的字符或遇'\0'为止。
第3个回答  2009-02-16
后面的stu和edu要打[]吗?
(非C++人员)

C程序两个字符串数组如何相互赋值?
char stu[]="good",edu[]="good"; 或者是在后面用循环一个一个的赋,就是这样:char stu[],edu[]="good";int i;for (i=0;i<4;i++){stu[i]=edu[i];}在定义后再给字符数组赋值的话必须用循环了,有一个库函数可以执行字符串拷贝,我记得是strcpy(a[],b[])也是可以用的,可以把一个字符串的内...

c#如何将字符串数组赋值给另一字符串数组
在C#中,你可以使用`Array.Copy`方法或者直接使用赋值操作符`=`来将一个字符串数组赋值给另一个字符串数组。使用`Array.Copy`方法的示例代码如下:```csharp string[] sourceArray = { "Hello", "World", "!" };string[] destinationArray = new string[sourceArray.Length];Array.Copy(sourceA...

求 高手 C语言 数组和数组之间能直接赋值吗
数组之间是不可以直接赋值的,要直接赋值的话,也只能是利用循环,一个一个的赋值,不过你所要实现的可以通过其他方法来实现,比如取地址运算,把数组a的首地址赋给B数组,不过这要通过指针来实现,还有一种简单点的方法就是拷贝运算,你可以利用c语言库里面已经定义好的函数直接实现你所要实现的功能,...

c语言中怎样把一个字符数组付给另一个字符数组
用strcpy函数!原型声明:extern char *strcpy(char *dest,char *src);头文件:string.h 功能:把src所指由NULL结束的字符串复制到dest所指的数组中。说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。返回指向dest的指针。例子:include <stdio.h> include <string.h> ...

...将字符串数组中的一个元素赋给另一个字符串数组中的某个元素?_百度...
strcpy(str1[0], str2[1]);printf("%s %s", str1[0],str1[1]);--- 字符数组中的一个元素, 赋给另一个字符数组中的一个元素:include <stdio.h> int main(){ char str1[10],str2[10]="01234567";str1[3]=str2[5];printf("%c %c",str1[3],str2[5]);return 0;} ...

C语言中字符串是怎么赋值的?
在C语言中,字符串的赋值主要有两种方法,第一种是通过指针的方式直接赋值,第二种是通过数组直接赋值。1、指针式赋值。通过程序的运行情况,可以知道:char *p = "hello";这种字符串的赋值方式是完全没有问题的。要理解这种赋值方式,首先得理解双引号(特别注意:这个是双引号,不要赋值的时候给弄了...

c语言中将一个数组的值赋给另外一个数组,好像要用指针来赋值
chars[20];charss[]="hello";s=ss;错误原因是:是您不能使用赋值语句将一个字符数组直接赋值给一个字符串数组,也就是说,必须使用strcpy()函数来实现一个字符串的副本(在c语言中,但是在c++的string类中,上面的赋值是正确的)。因为赋值字符“=”右边的表达式也可以是赋值表达式,下面的形式变量是...

C语言里关于字符串数组的赋值问题
char a[]="asd",b[]="jkui";相当于做了如下定义:char a[3]="asd";其中,a[0]~a[2]是'a','s','d';a[3]='\\0',再多,有可能会溢出,也就是出现乱码。char b[4]="jkui";也同理。在字符串a之后,定义了数组b,也就是说字符串a后就是字符串b,换句话说其后内存空间一定被...

C语言中字符串的赋值方式有哪些
在C语言中,字符串的赋值方式有以下几种:1.字符数组赋值:可以通过定义一个字符数组,并逐个赋值字符来表示字符串。例如:char str[] = "Hello World";2.字符指针赋值:可以通过定义一个字符指针,并将指针指向字符串常量或字符数组的首地址来表示字符串。例如:char *str = "Hello World";3....

C语言字符串赋值操作
1:char *s="abcdef";2:char ss[10]="abcd";3:char sss[10]={"kkkk"};上面三种方式 都是正确的,但是 有区别。1: 上面已经讲了,是将已经存在于内存中的字符串的首地址 赋值给 s 2: 这是将已经存在于内存中的字符串 拷贝到ss 这个数组里面,是一个拷贝 过程,产生的影响是系统中存在...

相似回答