Теперь приступаем к разбору первой программы.
В строке
#include
находится директива препроцессора #include (директивы препроцессора начинаются с символа "#" - "решётка", или "номер" )
"include" означает "включить", то есть - "включить в состав программы заголовочный файл "stdio.h"(h - header, заголовок)
В свою очередь, в файле stdio.h определены
(
Read more... )
Comments 7
Это ФАЙЛОВЫЙ ввод-вывод с буферизацией на уровне пользовательской программы
Reply
Где здесь противоречие с моими словами?
У меня сказано буквально:
Напоминаю, что язык Си создавался для Unix, а в юниксе стандартными средствами ввода-вывода являются соответственно клавиатура и дисплей. Именно эти функции и включает заголовочный файл stdio.h
Где тут утверждение, что библиотека или заголовочный файл работает напрямую с терминалом?
Или мне следовало расписать всё подробнее?
Разумеется, в stdio.h только определено, что ввод данных программа получит из файла, соответствующего клавиатуре, а вывод будет на файл, представляющий дисплей.
Но это, извините, то же самое, что при описании диссоциации воды в школьнорм курсе химии не вводить детям абстрактное понятие иона водорода H+, а сразу загружать мозги реальным ионом гидроксония H3O+Вот вы знали из школьного курса химии о такой штуке, как ион гидроксония? Да я на 99,999% уверен, что вы и сегодня впервые о нём услышали, такие подробности вам в жизни никогда не были нужны, а в школе - и подавно ( ... )
Reply
Функции, включенные в stdio.h - это просто файловый ввод-вывод с буферизацией. Не верите мне - прочтите КиР.
Впрочем, pearl casting mode off. Спрашивайте melkorbsd.
Reply
printf("Слава КПСС!\n");
или там...
printf("Мы придем к победе коммунистического труда!\n");
Reply
К тому же я не был уверен, что gcc без проблем выведет кириллицу - до этого я экспериментировал с QT Creator, и что-то не заладилось...
Хотя попробовать можно )))
Reply
Reply
Вариант - консольная программа создается под винды. Там стоит целая куча граблей, побеждать которую очень сложно и совершенно не нужно.
Reply
Leave a comment