Двумерному массиву присвоить одномерный - C (СИ)
Формулировка задачи:
Здравствуйте! По ходу считывания из файла строка помещается в одномерный массив buffer[45]:
Все работает верно, но мне необходимо сделать так, чтобы после чтения к тексту можно было обращаться, как к двумерному массиву.
Например текст:
Где к символу О второй строки можно обращаться как ch[1][0], к примеру.
Пробовал делать что-то вроде ch[i][j] = buffer[j]; i++; но, не смотря на проверку на "\n" все равно получаю лишние символы и кашу в конце.
Спасибо.
while (!feof(file))
{
fgets (buffer, 45, file);
printf("%s", buffer);
}1234 Once I caught a fish alive 45678910 Then I let it go again 11121331
Решение задачи: «Двумерному массиву присвоить одномерный»
textual
Листинг программы
char buffer[5][100];
for(int i=0;i<5;i++)
{
fgets (buffer[i], 99, file);
puts(buffer[i]);
}
char a10=buffer[1][0];
Объяснение кода листинга программы
- Объявляется двумерный массив buffer размером 5х100.
- В цикле запрашивается строка из файла в каждую строку массива buffer.
- Выводится на экран содержимое каждой строки массива buffer.
- Переменной a10 присваивается значение первого символа второй строки массива buffer.