最简单程序的分段错误?

发布于 2024-08-31 15:39:41 字数 291 浏览 6 评论 0原文

我才刚刚开始,但是这段代码给了我一个“分段错误”,我无法找出它出了什么问题:

#include<stdio.h>

int main (void) {


 int number = 0;
 int lastDigit = 0;

 printf("Enter an integer: ");
 scanf("%d", number);

 number = number*10;

 printf("Number times ten is %d.\n", number);

 return 0;

}

I am just starting out, but this piece of code is giving me a 'segmentation fault' and I can't find out what's wrong with it:

#include<stdio.h>

int main (void) {


 int number = 0;
 int lastDigit = 0;

 printf("Enter an integer: ");
 scanf("%d", number);

 number = number*10;

 printf("Number times ten is %d.\n", number);

 return 0;

}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

八巷 2024-09-07 15:39:41

scanf("%d", number) 被赋予了 int 本身,但实际上需要一个int指针代码>.尝试 scanf("%d", &number)

scanf("%d", number) is being given the int itself, but actually needs a pointer to the int. Try scanf("%d", &number)

与之呼应 2024-09-07 15:39:41
scanf("%d", number);

scanf("%d", &number);

注意&符号。

scanf("%d", number);

would be

scanf("%d", &number);

Note the ampersand.

捂风挽笑 2024-09-07 15:39:41

使用“&”扫描后存储一个值。

scanf("%d", &number);

use "&" to store a value after scanning.

scanf("%d", &number);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文