Как написать полную строку в файл? - PullRequest
3 голосов
/ 07 февраля 2010

Я сейчас программирую в Windows, но переносимый код тоже приветствуется.

Сейчас я использую fwrite(4), но для этой функции необходимо записать максимальное количество элементов в файл. Я могу использовать strlen(1) здесь, но я хотел бы знать, есть ли лучший способ сделать это.

Ответы [ 3 ]

7 голосов
/ 07 февраля 2010

Используйте fputs вместо:

FILE * f = fopen( "myfile.txt", "w" );
fputs( "Hello world\n", f );
0 голосов
/ 07 февраля 2010

Сначала вы можете проверить наличие нуля в пределах ожидаемой длины.

0 голосов
/ 07 февраля 2010

Вы можете использовать fputs, но безопаснее использовать функции, требующие написания размера (переполнение буфера).

Так что, ИМХО, использование fwrite было бы предпочтительным выбором.

...