我一直在终端上收到一个bug,它说:
warning: format specifies type 'char *' but the argument has type 'int' [-Wformat]
scanf("%c", namehumaninput);
~~ ^~~~~~~~~~~~~~
我正在学习的课程是说我所需要做的就是有一个char变量,这就是它,使用它没有别的,但显然有什么是错误的。以下是我遇到麻烦的代码:
//Lesson 9
int inputage;
double gpainput;
char namehumaninput;
printf("Wat ur age?\n");
scanf("%d", &inputage); // scanf(); is how you do an input. You MUST have & behind a variable after a %d!!
printf("You are %d years old\n", inputage);
printf("Was yo GPA?\n");
scanf("%lf", &gpainput); // %lf is for double variables when using scanf() but using printf() it uses %s for variables. Confusing, I know.
printf("Your GPA is %f\n", gpainput);
printf("Wos yo name now that ive asked yo fo yo gpa and age\n");
scanf("%c", namehumaninput); // %c is universal for both
printf("Really? Yo name is %c?\n", namehumaninput);
我已经导入了stdio
和stdlib
库,并且正在使用MacOS。
1条答案
按热度按时间icnyk63a1#
这通电话
你至少要重写
格式字符串中的前导空格允许跳过输入流中白色字符,您需要提供一个字符指针作为第二个参数表达式。
但是,此调用只允许输入单个字符。
如果你想输入一个单词,那么你应该写例如