Вопрос заключался в следующем: определите функцию getint (), которая будет получать строку чисел c с клавиатуры, преобразовывать ее в целое число и возвращать целое число в вызывающую функцию.
Мой код :
#include<stdio.h>
#include<math.h>
#include<string.h>
int getint();
int main()
{
int a;
a = getint();
printf("you entered %d",a);
return 0;
}
int getint()
{
char str[10];
printf("Enter number: ");
gets(str);
int d=0,len = strlen(str),r = len-1;
for(int i=0;str[i] != '\0';i++,r--)
d += (str[i]-48)*pow(10,r);
return d;
}
пока я запускаю эту программу из возвышенного текста или блока кода, вывод получился неправильным
вывод (из возвышенных и кодовых блоков):
Enter number: 123
you entered 122
Но когда я использовал onlinegdb.com/online_c_compiler, вывод был правильным
Так как же может отличаться вывод от компилятора к компилятору для одной и той же программы