【问题标题】:segmentation fault for the simplest program?最简单程序的分段错误?
【发布时间】:2010-05-06 03:04:05
【问题描述】:

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

#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;

}

【问题讨论】:

  • scanf 并不简单,printf 也不简单,与 C++ 中的等价物相比,您需要了解很多,然后才能正确使用 cout

标签: c segmentation-fault


【解决方案1】:

scanf("%d", number) 本身被赋予了int,但实际上需要一个指针 int。试试scanf("%d", &amp;number)

【讨论】:

    【解决方案2】:
    scanf("%d", number);
    

    scanf("%d", &number);
    

    注意与号。

    【讨论】:

      【解决方案3】:

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

      scanf("%d", &number);
      

      【讨论】:

        猜你喜欢
        • 2012-09-16
        • 1970-01-01
        • 1970-01-01
        • 2013-04-11
        • 1970-01-01
        • 2014-08-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多