Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Вопрос по стандартной библе
|
|||
|---|---|---|---|
|
#18+
Уважаемые, суть вопроса в следующем Ниже представлен маленький кусочек кода примерно соотв. ситуации, которую я хочу прояснить для себя. if ((F = fopen(SettingsFile,"rt"))==NULL ) { ....... ....... } ............. ............. char *result_str = "" ; char st[32]; do { fgets(st,32,F); strcat(result_str,st); if (feof(F)) break; } while (true); char* temp = "111"; fclose(F); Кто работает со стандартной библиотекой, для того не нужно объяснять, что в коде открываеться файл для чтения, затем считывается в переменную st по 32 байта в цикле, затем конкатенация со строкой result_str. Так вот весь фокус в том, что переменная temp которая ниже инициализируется "111" принимает значение не 111 а значение result_str!!! В общем компилятор Builder - а 6 - го считает своим долгом инициализировать значением result_str любую константную строку следующую после цикла с применением strcat. Неважно, куда идёт эта строка, в поток или в файл или просто инициализирует переменную. Вот такие вот дела. Объясните мне недалёкому, в чём тут дело. Я конечно знаю, что можно использовать вместо char* AnsiString или просто string. Но просто хочеться разобраться в этом, в отладчике проверял - это из-за strcat. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2003, 11:50 |
|
||
|
Вопрос по стандартной библе
|
|||
|---|---|---|---|
|
#18+
Молодой человек!!! А память выделять Пушкин будет??? Ты работаеш с указателем как с массивом. Подсунь фаил побольше и прога должна вылететь. правильн ее : Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. PS: память лучше выделять с new или malloc. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2003, 12:02 |
|
||
|
|

start [/forum/topic.php?fid=57&tid=2036092]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
54ms |
get topic data: |
13ms |
get forum data: |
4ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
| others: | 235ms |
| total: | 393ms |

| 0 / 0 |
