Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Как сделать строчный массив?


Автор: Zerg 29.9.2003, 01:10
Уважаемые господа!
Сразу оговорюсь, что я связист, а программу заставила писать жутчайшая необходимость.
Написание происходит по принципу слепого котенка, ищущего молоко.
Так что отнеситесь снисходительно и помогите плз.
Суть:
Существует файл, в который постоянно записывается информация с АТС.
Я написал уже программу, которая читает его каждые 5 сек. и записывает в другой файл,
но требуется делать выборку по определенным критериям, сохраняя только соответствующее и
выводя на печать.
Читаю его так:
..
buff = (char *) malloc(dwbufferSize+1)
ReadFile(hFile, buff, ..... и т.д.
Посему в buff информация располагается посимвольно.
Как преобразовать в построчную?
Как создать массив из строк?

Автор: NULL 29.9.2003, 10:52
можно сделать так
char buff[10][10];
10 строк а в них по 10 символов

Автор: DENNN 29.9.2003, 11:39
это если в каждой сроке строго по 10 символов (включая пробелы) smile.gif

Проще всего найти в считанном массиве строк символ перевода строки ("\n" или "\r\n") и таким образом определить где кончается строка.

Автор: Ars 29.9.2003, 11:47
А еще проще использовать соответствующий класс mfc или vcl (в vcl - TStrings: можно читать/писать файл, работать с отдельными строками любой длины)

Автор: Step 29.9.2003, 16:36
советую использовать библиотеку iostream ее функции позволяют читать по строчно, эти строк и будешь обрабатывать

Автор: NULL 29.9.2003, 16:46
DENNN а можно вот такова типа
//////////
str = (char *) malloc(dwbufferSize+1);
ReadFile(hFile, str....);
int str_lenght = sizeof(str);

char **buff = new char*[size];//сколько строк

for(int ix = 0; ix < size; ix++)
buff = new char[str_lenght/*длина строки*/];

strcpy(buff[0], str);
cout << buff[0];
////////

Автор: mr.DUDA 29.9.2003, 23:11
А можно вообще подключить "#include <string>" и не забивая себе голову пользоваться удобным контейнером "string".

Автор: DENNN 30.9.2003, 21:00
mr.DUDA, оно конечно хорошо, только если человек с такой простой задачей не справился зачем ему в STL погружеться?

Автор: Zerg 30.9.2003, 12:18
Я пытаюсь использовать strtok для разбиения на токены и для разбиения на строки. Только работа продвигается оччччень медленно.
Спасибо за помощь, если будет возможность паомогите более подробно

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)