c语言给字符数组赋值
❶ c语言中将字符串赋值给字符数组的问题
char s[20];s="helo";这样错误的原因就是:不能用赋值语句将一个字符串常量直接给一个字符数组赋值。
char s[20];
char ss[]="hello";
s=ss;错误原因是:不能用赋值语句将一个字符数组直接给一个字符数组赋值
,即字符串的复制(c语言中,但是在c++的string 类,上面的赋值是正确的)必须用strcpy()函数实现。
而char a[ ]=”toyou“;正确的原因是:因为在声明数组变量的时候就是,为其开辟空间,并为其初始化,这样才是符合c语言语法的。
❷ C语言中怎么字符串赋值
需要准备的材料分别有:电脑、C语言编译器。
1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。
❸ 怎么进行字符串赋值C语言
在C语言中,字符串的赋值主要有两种方法,第一种是通过指针的方式直接赋值,第二种是通过数组直接赋值。
1、指针式赋值。
❹ c语言中 字符串赋值给数组的三种表达方式是什么
1楼的答案是错误的,建议回答别人问题还是要看看书的!
第一种方式:定义的时候进行初始化
char
str[200]={"abcd"};//这里去掉大括号也行
第二种方式:对数组各元素单独赋值
char
str[200];
str[200]={'a','b','c','d'};
/*编译系统会在最后加上'\0'的,然后就是不能使用str[200]="abcd"的方式对字符数组进行整体赋值*/
第三种方式:应该是使用指针吧
char
*str="abcd";
或者
char
*str;
str="abcd";
使用指针时,这两种方式都是可以的,而且你可以使用下标的方式引用字符串中的各字符
❺ C语言 如何给字符指针数组赋值
字符指针数组的赋值和普通数组的赋值是一样的,只不过字符指针数组里的元素是指针。
以下是字符指针数组赋值的示例:
char* pChar[5];
char str1[] = "First";
char str2[] = "Second";
char str3[] = "Third";
char str4[] = "Fourth";
char str5[] = "Fifth";
pChar[0] = str1;
pChar[1] = str2;
pChar[2] = str3;
pChar[3] = str4;
pChar[4] = str5;
for (int i=0;i<5;i++)
{
printf("pChar[%d] = %s\n",i,pChar[i]);
}
❻ C语言对字符数组的赋值
显然错,char
str[14]是固定大小的字符数组,而str[]是不确定大小的字符数组。是两个不同的数组,而且在同一模块中数组名不能相同。可以这样改
char
str[]={"i
love
china!"};字符个数为14(末尾有个‘\0’)或者char
str[14]={"i
love
china!"};
❼ c语言利用循环给字符数组赋值怎么做
int main()
{
int array[10];
for(int i=0;i<10;i++) //I 不能超过数组的最大长度
{
a[i]=i;
}
return 0;
}
❽ C语言 怎么把字符数组中的字符赋值给字符变量
第一种写法,等同于char a[10] = {"abc"};
第一种写法,用一个字符串赋值,实际上保存了4个字节(包含字符串结束符)。
第二种写法,只赋值了三个字节。
1、char c[5];
c[0]=’H’; c[1]=’e’; c[2]=’l’; c[3]=’l’; c[4]=’o’;
2、charc[5]={‘H’,’e’,’l’,’l’,’o’};
3、(1)如果在定义字符数组时不进行初始化,则数组中各元素的值是不可预测的;
(2)如果花括号中提供的初值个数(即字符个数)大于数组长度,则按语法错误处理;
(3)如果花括号中提供的初值个数(即字符个数)小于数组长度,则只将这些字符赋给数组中前面那些元素,其余的元素自动定为空字符(即‘\0’);
4、(如何将字符串赋值给字符数组)
C语言中,将字符串作为字符数组来处理的。C语言规定了一个“字符串结束标志”,以字符’\0’作为标志。为此,再对字符数组初始化的方法补充一种用字符串常量来使字符数组初始化方法:
char c[] = {“Hello”};
或 char c[] =“Hello”; 注意:数组c的长度不是5,而是6.
上面的初始化等价于:char c[5]={‘H’,’e’,’l’,’l’,’o’,’\0’};
而不等价于:charc[5]={‘H’,’e’,’l’,’l’,’o’};
5、字符数组的输出
char c[] ={“Hello”};
printf(“%s”,c);
6、(如何将字符串赋值给字符数组)
strcpy(字符数组1,字符串2)
eg: char str1[10]=’’, str2={“Hello”};
strcpy(str1,str2);
执行后str1状态为:
H
e
l
l
o
\0
\0
\0
\0
\0
(1)“字符数组1”必须写成数组名形式(如str1),“字符串2”可以是数组名,也可以是字符串常量。eg strcpy(str1, “Hello”);
(2)不能用赋值语句将一个字符串常量或字符数组直接给一个字符数组。如下面两句都是不合法的:str1=”Hello”;
str1=str2;
而只能用strcpy函数将一个字符串复制到另一个字符数组中去,赋值语句只能将一个字符赋给一个字符型变量或者字符数组元素。如下面的语句是合法的:
char c[5],c1,c2;
c1=’A’;c2=’B’;
c[0]=’H’; c[1]=’e’; c[2]=’l’; c[3]=’l’; c[4]=’o’;
7、strlen函数是测试字符串实际长度(不包含‘\0’在内)的函数。
char c[10]=”Hello”’
printf(“%d”,strlen(c)); 或者Printf(“%d”,“Hello”); 输出为5
❾ C语言里如何把输入字符串赋值给字符数组
char
c[10];
//c是数组名,代表数组的首地址。要是想让数组中存放一个字符串,只需知道首地址即可。所以可以用scanf("%s",c);因为c本身就是地址,所以不用加&
char
*s;
//s是指针变量,指针可以存放一个地址值
s="abcde";
//c语言中字符串常量是以数组的形式在内存中存放,这条赋值语句,相当于是把abcde的首地址赋给了指针变量s
char
s;
//s是一个字符变量,只能给其赋一个合法的字符
❿ c语言中如何给数组定义并赋初值
字符串数组定义赋值:
char c[6]={'c', ' h ', 'i', 'n', 'a' , '