Printf записва ли в stdout?
Printf записва ли в stdout?

Видео: Printf записва ли в stdout?

Видео: Printf записва ли в stdout?
Видео: #8. Функция printf() для форматированного вывода | Язык C для начинающих 2024, Ноември
Anonim

printf () - и някои други "печатни" функции като puts() - запис на стандартен изход , също известен като stdout или в крайна сметка Файлов дескриптор 1.fprintf(stderr, …) - записва своя изход до стандартна грешка изход , известен също като stderr или File Descriptor2.

Съответно какво е стандартен изход?

Стандартен изход , понякога съкратено stdout , се отнася до стандартизираните потоци от данни, които се произвеждат от програми на командния ред (т.е. програми с изцяло текстов режим) в Linux и други Unix-подобни операционни системи. Защото стандартен потоците са обикновен текст, те са по дефиниция четими от човека.

Впоследствие въпросът е какво системно повикване използва printf? printf () е един от API или интерфейсите, изложени на потребителското пространство повикване функции от библиотеката C. printf () всъщност използва пиша () системно повикване . The write() системно повикване всъщност е отговорен за изпращането на данни към изхода.

Имайки предвид това, какво е stdin и stdout?

Ако разбирането ми е правилно, stdin е файлът, в който програмата записва в своите заявки за изпълнение на задача в процеса, stdout е файлът, в който ядрото записва изхода си и процесът, който го изисква, получава достъп до информацията, а stderr е файлът, в който се въвеждат всички изключения.

Какво е стандартен вход и изход?

В стандартен вход устройство, наричано още stdin , е устройството, от което вход към системата е взета. В стандартен изход устройство, наричано също asstdout, е устройството, към което изход от системата е изпратено. Обикновено това е дисплей, но можете да пренасочите изход към сериен порт или файл.

Препоръчано: