Ошибка сегментации для простейшей программы? - PullRequest
1 голос
/ 06 мая 2010

Я только начинаю, но этот фрагмент кода дает мне «ошибку сегментации», и я не могу выяснить, что с ней не так:

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

}

Ответы [ 3 ]

8 голосов
/ 06 мая 2010

scanf("%d", number) присваивается сам int, но на самом деле требуется указатель на int.Попробуйте scanf("%d", &number)

2 голосов
/ 06 мая 2010
scanf("%d", number);

будет

scanf("%d", &number);

Обратите внимание на амперсанд.

0 голосов
/ 26 августа 2011

используйте «&» для сохранения значения после сканирования.

scanf("%d", &number);
...