CodeBlocks 10.05 и С99, Error: 'for' loop initial declarations are only allowed in C99 mode - C (СИ)
Формулировка задачи:
Здравствуйте. Просьба помочь с некоторыми сложностями
1. При компилировании, создается еще один файл main.c со звёздочкой (*main.c). Если в программе есть ошибки, то она открывает всегда новый *main.c и указывает строку кода с ошибкой первого main.c .
2. \main.c|10|error: 'for' loop initial declarations are only allowed in C99 mode|
Выбирал GNU GCC. Что я делаю не так ? Код тут думаю не причем. он ведь ругается на компилятор, но всё же выложу.
Заранее спасибо
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
int i;
char str;
int main()
{
scanf(str);
for (int i=0; str[i] != '\0';i++)
printf(%str[i]);
return(0);
}Решение задачи: «CodeBlocks 10.05 и С99, Error: 'for' loop initial declarations are only allowed in C99 mode»
textual
Листинг программы
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main()
{
int i;
char str[256];
scanf("%s",&str);
for (i=0; str[i] != '\0';i++)
{
printf("%c",str[i]);
}
getch();
return 0;
}
Объяснение кода листинга программы
В этом коде:
- Включаются необходимые заголовочные файлы: stdlib.h, printf.h и conio.h.
- Объявляется переменная типа int i, которая будет использоваться в цикле.
- Объявляется переменная типа char str[256], которая будет использоваться для хранения строки.
- С помощью функции scanf вводится строка с помощью клавиатуры.
- Инициализируется цикл for, который будет выполняться до тех пор, пока значение str[i] не станет равным нулю.
- В каждой итерации цикла выводится значение str[i] с помощью функции printf.
- После окончания цикла выполняется функция getch(), которая приостанавливает выполнение программы до тех пор, пока пользователь не нажмет клавишу.
- Программа возвращает 0, что означает успешное выполнение.