从“int”到“char”的转换发生溢出更改C
每当我运行此代码时,它都能完美运行:从“int”到“char”的转换发生溢出更改C,c,linux,variables,C,Linux,Variables,每当我运行此代码时,它都能完美运行: #include<stdio.h> int main() { char a = 's'; printf("Value of a is: %c \n",a); return 0; } 我想从变量a调用Hello World,单引号用于单个字符。在大多数情况下,多个字符不应出现在单引号中。如果需要字符串,则需要双引号 您还需要更改分配给char*的变量的类型,并使用%s打印它 char *a =
#include<stdio.h>
int main() {
char a = 's';
printf("Value of a is: %c \n",a);
return 0;
}
我想从变量a调用Hello World,单引号用于单个字符。在大多数情况下,多个字符不应出现在单引号中。如果需要字符串,则需要双引号 您还需要更改分配给char*的变量的类型,并使用%s打印它
char *a = "ss";
printf("Value of a is: %s \n",a);
看起来您正在尝试使用字符串而不是字符。一个字符只代表一个字符。如果需要多个字符,则需要一个字符串。在C语言中,字符串由char*表示。所以你可以试试
char *a = "ss";
printf("Value of a is: %s\n", a);
请注意字符串周围的双引号,而不是字符周围的单引号。另请注意格式字符串中的%s而不是%c。char只能存储一个字符。为了保存字符串,您需要一个字符数组
字符串实际上是以字符串结尾的一维字符数组
空字符“\0”。因此,以null结尾的字符串包含
由后跟null的字符串组成的字符
一段工作代码将是
#include <stdio.h>
int main()
{
char *a = "Hello World";
printf("Value of a is: %s \n", a);
return (0);
}
你认为它对“ss”有什么作用?顾名思义,char意味着只包含一个字符。如果要存储两个字符,通常使用字符串,这是一个字符数组。告诉我值是:ssYou不能在一个字符中存储多个字符。打印Hello World的代码示例
char *a = "ss";
printf("Value of a is: %s\n", a);
#include <stdio.h>
int main()
{
char *a = "Hello World";
printf("Value of a is: %s \n", a);
return (0);
}