【发布时间】:2014-09-26 23:21:48
【问题描述】:
我刚开始第一次学习C,遇到了很多问题。 当我使用 printf 编写 HelloWorld 应用程序时,一切都很好,但是当我包含 scanf 函数甚至 char 变量时,似乎什么都不想工作。我知道这可能是一个愚蠢的问题,但我非常感谢任何可用的帮助。
我在尝试编译时遇到的一些错误包括:
在函数'main'中: 警告:初始化从没有强制转换的指针生成整数 [默认启用]
现在,当我尝试编译时,我没有收到任何错误消息,最后没有生成或可执行文件。请帮忙,非常感谢。
#include <stdio.h>
int main (void)
{
int Numb;
printf( "Hello world\n");
printf( "I'm Kallum/n");
printf( "Choose a Number Between one and ten: ");
scanf( "%d", &Numb);
printf("This is your Number %d!", Numb);
return 0;
}
【问题讨论】:
-
它从命令行编译 find 。我最好的猜测是您在设置 Eclipse 项目时做错了什么。
-
这是一个警告,而不是一个错误。
-
您说您没有收到错误消息,这是可以预料的,因为问题中的程序看起来不错。我们无法解决您提到的错误消息,因为我们看不到导致它的代码。我的猜测是您的程序 正在 编译并生成可执行文件;你只是没有看到它。问题是知道如何使用 Eclipse(我不知道,所以我无能为力)。
-
@migas:是的,gcc 发出警告,但它是针对违反约束的;恕我直言,它应该是一个致命错误。 (和
-pedantic-errors一样。)但是现在问题中的代码无论如何都不会产生该消息。 -
在 every
printf格式字符串的末尾使用\n。或者学习如何使用fflush;通常变量是小写的,所以kalum不是Kalum。编译所有警告和调试信息 (gcc -Wall -g)。并学习如何在命令行编译。