以下是我的程序:
#include <stdio.h>
int main() {
int age = 21;
float cgpa = 8.92;
char name = "Karan";
printf("My Name Is %c", name);
printf("You are %d years old", age);
printf("My Avg cgpa is %f", cgpa);
return 0;
}
字符串
我得到这个编译器错误:
hello.c: In function 'main':
hello.c:6:15: warning: initialization makes integer from pointer without a cast [-Wint-conversion]
char name = "Karan";
^~~~~~~
型
1条答案
按热度按时间sirbozc51#
“Karan”是一个字符串文字,而不是单个字符。
字符串字面量在技术上是一个字符数组,保存字符串的变量必须是指向字符数组的指针。
字符串
单个字符在C中以这种方式存储,其格式说明符为
%c
。要存储字符串,您需要声明一个char或字符指针数组,这是由
型
并且其格式说明符是
%s
。还要注意,当声明一个字符串时,你使用双引号,而当声明一个字符时,我们使用单引号