好吧,我正在尝试在 VS 中编写一个基本程序。输入一个数字,然后打印出来。始终打印 1。
int main(){
printf("Enter an integer: ");
int n = scanf_s("%d", &n);
printf("%d", n);
}
最佳答案
您将从 scanf_s()
返回的值分配给变量 n
,这意味着程序将在以下情况下打印 1
:读取成功。
你应该做的是
int numberOfItemsMatched;
int readValue;
numberOfItemsMatched = scanf_s("%d", &readValue);
if (numberOfItemsMatched == 1)
printf("%d\n", readValue);
我希望变量名称是不言自明的,并且使用这种名称总是一个好主意。
关于c - scanf 之后的 printf 始终显示 1(相同的意外值),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28132729/