| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Функция fgets |
| Автор: mr_Grig 19.1.2007, 13:08 | ||||
Народ когда мы считываем из файла кусок текста, к примеру построчно функцией
|
| Автор: Rodman 19.1.2007, 13:14 |
| а если при помощи Delete(str, Strlen(str)-2,2); или не подходит? |
| Автор: mr_Grig 19.1.2007, 13:27 |
| не катит (можно было и так delete(x[strlen(x)]) |
| Автор: Kuvaldis 19.1.2007, 13:46 | ||||||||
| mr_Grig, 1. Разберись с выделением памяти. Ты выделяешь только на 1 символ с инициализацией значением 80
А нужно
2.
считываешь не более 255 символов нужно тогда и выделить памяти в п.1 не на 80 а на 256 символов (включая окончание - нулевой символ) 3.
В С нет встроенного типа "строка". Если хочешь без нулевого символа, то это будет массив с длиной len |
| Автор: _stranger_ 19.1.2007, 14:03 | ||
можно попробывать другой функцией, например getline:
|
| Автор: mr_Grig 19.1.2007, 14:15 |
| а что такое c_str()? Добавлено @ 14:30 я под visual c++ 6.0, : 'getline' : undeclared identifier |
| Автор: _stranger_ 19.1.2007, 14:40 |
| Функция c_str() возвращает указатель на константный символьный массив, содержащий строку объекта string. |
| Автор: Kuvaldis 19.1.2007, 14:40 |
| mr_Grig, тебе нужно в чистом С или в С++ написать? Ты работал когда-нибудь с потоками? _stranger_ ИМХО, некрасиво смешивать С и С++. Если уж использовать потоки и классы, но везде, без всяких puts() и т.д. |
| Автор: mr_Grig 19.1.2007, 18:43 |
| Все задачу решил! Огромное спасибо друзья. "Я еще не волшебник, но учусь!" P.S.: И в особенности thanks Kuvaldis-y. |