Непонятное поведение функции atol - C (СИ)
Формулировка задачи:
добрый день, конвертирую строку str4 к long int использую функцию atol и смотрю в дебаге получаю ерунду, подскажите как исправитьответы на рисунке
char str4[5]='43200'; long int proverka; ... proverka = atol(str4);
Решение задачи: «Непонятное поведение функции atol»
textual
Листинг программы
char *str4_1="43200";
char str4_2[]="43200";
long int proverka1, proverka2;
proverka1 = atol(str4_1);
proverka2 = atol(str4_2);
printf("result_1 %ld, result_2 %ld",proverka1,proverka2);
Объяснение кода листинга программы
- Объявляются две строки:
char *str4_1=
43200; char str4_2[]=43200; - Объявляются две переменные типа long int: long int proverka1, proverka2;
- Функция atol используется для преобразования строки в long int: proverka1 = atol(str4_1); proverka2 = atol(str4_2);
- Используется функция printf для вывода значений переменных proverka1 и proverka2:
printf(
result_1 %ld, result_2 %ld,proverka1,proverka2);