关于C编程的非常基本的查询 - 显示int值

jra*_*asa 4 c int

当我编译这个小程序而不是显示" num1:7,num2: 2"时,它显示" num1:-1218690218,num2:-1217453276".我想我没有指定程序应该显示什么,所以它只是给我int范围.对不起.

#include <stdio.h>
main() {
     int num1 = 7, num2 = 2;                
     printf("num1:%d , num2:%d\n"), num1, num2;
}
Run Code Online (Sandbox Code Playgroud)

编辑:非常感谢你!练习的目的是纠正语法错误,但每当我编译它时,我都没有得到任何警告.这个括号很容易错过.

Jer*_*fin 7

你把右括号之前 num1num2,使它们不会被传递到printf.你需要改变这个:

 printf("num1:%d , num2:%d\n"), num1, num2;
Run Code Online (Sandbox Code Playgroud)

对此:

 printf("num1:%d , num2:%d\n", num1, num2);
Run Code Online (Sandbox Code Playgroud)

是的,括号是唯一的变化,但这是至关重要的.


小智 5

您正在使用逗号运算符而不是函数调用的参数.printf将输出垃圾值,但它也可能已崩溃.


所以它应该是:

printf("num1:%d , num2:%d\n", num1, num2);
Run Code Online (Sandbox Code Playgroud)

注意)-character.