c为什么我得到以下输出"**-858993460**"

  • 本文关键字:输出 -858993460
  • 更新时间 :
  • 英文 :


为什么使用以下代码时会得到以下输出"-858993460":

#include<stdio.h>
int aNumber(void);
int main()
{   
    printf("%d", aNumber());    
    return 0;   
}
int aNumber(void) {
    int x = 1;
}

我只是好奇。我知道我需要使用"return"在我的"printf"上获得实际的int 1

因为aNumber的返回值未定义。由于不返回值,因此会出现未定义的行为。不要指望它。在许多机器上,EAX存储返回值。如果没有EAX的值,则使用其以前的值。

最新更新