Re: fprintf && write
- From
- Valentin Nechayev ()
- To
- Lev Serebryakov ()
- Date
- 2003-06-05T19:56:34Z
- Area
- RU.UNIX.PROG
From: Valentin Nechayev <netch@segfault.kiev.ua>
>>> Lev Serebryakov wrote:
VN>> Можно. Главное - не подставить неизвестную строку в формат в fprintf.
VN>> Лучше - fputs().
VN>> Кстати, gcc3, например, в hosted режиме переведёт это в fputs() сам.
LS> А что это за режим и какие у него еще бывают!?
Этих два - hosted и freestanding. hosted - это когда окружение (библиотеки,
etc.) полностью соответствует стандарту (например, printf() - это обязательно
printf от stdio и ничто иное). freestanding - когда такой обязательности нет
и компилятор не имеет права делать оптимизации по знанию окружающей
обстановки кроме явно сказанных.
По умолчанию - hosted. Freestanding обязателен, например, для компиляции
ядра.
Дальнейшие детали - в стандарте C99 и в info gcc.
-netch-
--- ifmail v.2.15dev5
* Origin: Dark side of coredump (2:5020/400)