0

我对 C 编码非常陌生。刚开始学习一个月左右。一切进展顺利,但突然间,DEV C++ 开始出现奇怪的行为。问题是现在它不显示变量值。这意味着我编写了一个 C 代码,编译它,运行程序后我发现我在代码中输入的内容没有正确显示。几天前还好,但现在我不知道它是如何或什么原因完全搞砸了。

这是问题的一个例子。一个非常简单的基本 C 代码。但最终的结果是一团糟。

#include <stdio.h>

main()
{
    char a = 'J';
    int x = 15;
    float y = 9.75;

    printf("%c\n%d\n%f", &a,&x,&y);

    getch();
}

Output: shows something like a triangle
    2293528
    0.000000

谁能告诉我问题是什么以及如何解决?生无可恋。Dev C++ 是我能理解的唯一 IDE。我已经下载了其他几个,但无法弄清楚。

程序:Orwell Dev-C++ 版本:5.3.0.4

编译器:MinGW GCC 4.7.0 32bit(包含在 Dev-C++ 中)

4

1 回答 1

7

您正在将这些变量的地址提供给printf()已被告知期望这些值的 a。这是未定义的行为。

做就是了:

printf("%c\n%d\n%f", a,x,y);
于 2013-02-01T22:39:27.563 回答