【解释】C语言中,字符串必须是以0结尾。在答案A中,s定义为5个元素的字符型数组,即最多能存放5个字符,字符串结尾符0无法存放,故A是错误的字符串赋值;答案B对数组赋值没错,但同A一样,没有字符串结尾符0,所以也是错误的;答案D是“野指针”赋值,是错误的;而对于答案C,先定义字符指针s,而后将字符串"A...
总结起来,我们不能将char赋值给字符串是因为它们属于不同的数据类型,字符串是由多个字符组成的字符数组,而char只能表示单个字符。正确的操作是使用字符串处理函数来操作字符串。
1、定义的时候直接用字符串赋值 char a[10]="hello"; 注意:不能先定义再给它赋值,如char a[10]; a[10]="hello";这样是错误的! 2、对数组中字符逐个赋值 char a[10]={'h','e','l','l','o'}; 3、利用strcpy char a[10]; strcpy(a, "hello"); 易错情况: 1、char a[10]; a[10]="...
int i=strcmp(s1,s2); 即比较s1和s2两个字符串数组的大小 s1 < s2 则 i < 0 s1 = s2 则 i = 0 s1 > s2 则 i > 0 #include<stdio.h> #include<string.h> int main() { char s1[20]; char s2[20]; int i; printf("请输入s1:\n"); scanf("%s",&s1); printf("请输入s2:\n")...
一个数组赋值给另一个数组的方法 int arr1[5] = {1, 2, 3, 4, 5}; int arr2[5]; arr2 = arr1; // 错误,不能直接赋值 方法一 使用循环遍历数组中的每一个元素...该函数的语法如下: char *strcpy(char *dest, const char *src); 它从源字符串src复制字符到目标字符串dest,包括NULL字符(即...
char srt[80];数组会退化为指针,是一个地址
A. char *s=″ABCDE″; B. char s[5]={′A′,′B′,′C′,′D′,′E′}; C. char s[4][5]={″ABCDE″}; D. char *s;get(s); 相关知识点: 试题来源: 解析 A 正确答案:A 解析:本题考查字符数组的初始化。B选项中赋值号右侧是赋值给一个字符串数组,而左边是一个字符数组,所以错误;...
解析:一个字符串包括字符部分和字符串结束标志。将字符指针变量初始化为一个字符串有两种方式,一种通过赋值运算使一个字符指针指向一个字符串常量:char *ch;ch=“abc”,A选项正确。另一种是定义一个字符指针变量,并且初始化为一个字符串的首地址:char *ch=“abc”。B选项定义一个字符数组并为其赋初值,因为...
charCharType[6];// 定义一个 char 类型的数组。 strcpy(CharType,"0.001");// 将字符串 “0.001” 赋值给 CharType 数组。 itoa(i_value_flag,CharType);// 将int型变量,转换成字符串,然后赋值给CharType数组。 当我把int型变量转换成字符串的时候,我发现字符串显示顺序反了。比如 i_value_flag 等于...