1. Гость, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!

[Delphi Урок №1] Hello World

Тема в разделе 'Уроки', создана пользователем JoLan, 18 фев 2011.

  1. TopicStarter Overlay

    JoLan Команда форума Администратор AngeliCore Программист

    Сообщения:
    1.061
    Лайки:
    945
    Пол:
    Мужской
    Репутация:
    6
    Команда:
    AngeliCore
    Страна:
    Russian Federation Russian Federation
    Итак, для начала нам понадобится среда разработки. Я предпочитаю Embarcadero RAD Studio 2010.

    Скачали? Отлично.

    Как установить и крякнуть описано в той же теме, тут об этом писать незачем.

    [war2]Внимание: Запускайте Delphi 2010, а не RAD Studio, иначе потом запутаетесь, что относится к C++, а что к Delphi[/war2]

    Выбираем File -> New -> Console Application
    [​IMG]

    Не нашли? Фигня-война: нажимаем File -> New -> Other
    [​IMG]

    Итак, мы видим такой код:
    Код:
    program Project1; //Это само название программы, не обязательно вообще, но лучше пусть будет.
    
    {$APPTYPE CONSOLE} //директива компилятору, говорит, что выходной тип приложения текущего проекта будет консоль
    
    uses
    SysUtils; //Подключаемые библиотеки, в SysUtils находятся большинство самых необходимых функций и процедур
    
    begin //Начало основного тела программы
    try
    { TODO -oUser -cConsole Main : Insert code here }
    except
    on E: Exception do
    Writeln(E.ClassName, ': ', E.Message);
    end;
    end. //Конец программы.
    Видите конструкцию try-except? Сносите её куда подальше, объясню позже, мы ведь простой Hello World пишем. Должно получиться вот это:
    Код:
    program Project1;
    
    {$APPTYPE CONSOLE}
    
    uses
    SysUtils;
    
    begin
    
    end.
    Все, теперь у нас есть заготовка под нашу программу. Немного об используемых процедурах:

    Writeln - вывод на экран переменной, константы с переносом строки
    Write - аналогично, но переноса не будет
    Readln - считывание переменной
    Read - то же самое

    Что мы хотим от нашей программы? Нет. Вон вы, в первом ряду! Да, почти! Да, именно это: мы хотим вывести на экран строку. Для этого нам понадобится процедура... Правильно, Writeln. Задаем строковый аргумент в процедуру, после чего наш код приобретает следующий вид:
    Код:
    program Project1;
    
    {$APPTYPE CONSOLE}
    
    uses
    SysUtils;
    
    begin
    Writeln('Hello world!');
    end.
    Немного пояснений: раз мы передаем постоянную строку, т.е. константу, мы задаем её явно в аргументах процедуры. А чтобы компилятор не расценил это как команду мы заключили её в апострофы.

    Запускаем. Консоль появилась и сразу исчезла. Программа сработала правильно, вывела в консоли наше сообщение, но мы не объяснили компилятору, что до выхода из приложения нужно дождаться нажатия Enter. Для этого дописываем Readln после вывода сообщения:
    Код:
    program Project1;
    
    {$APPTYPE CONSOLE}
    
    uses
    SysUtils;
    
    begin
    Writeln('Hello world!');
    Readln;
    end.
    
    Теперь все замечательно, вот и наша первая программа:
    [​IMG]

    Поздравляю Вас!

    P.S. Что непонятно - спрашивайте, расскажу и покажу.
    7 пользователям это нравится.
  2. Ex3m I Пользователи

    Сообщения:
    40
    Лайки:
    62
    Пол:
    Мужской
    Репутация:
    0
    Команда:
    Play-BB
    Ололо, Джо наконец то научился писать Hello World? :unsure:
    На самом деле расписано все хорошо, вот только новичку будет проще консольные программки писать в Turbo Pascal 7.
    И что же ты забыл рассказать про священную точку с запятой? ( ; )
  3. TopicStarter Overlay

    JoLan Команда форума Администратор AngeliCore Программист

    Сообщения:
    1.061
    Лайки:
    945
    Пол:
    Мужской
    Репутация:
    6
    Команда:
    AngeliCore
    Страна:
    Russian Federation Russian Federation
    Там нет динамических массивов, а так же в будущем буду писать уроки о создании GUI-приложений.

    Насчет священной ";" Ex3m прав: после каждой команды нужно её ставить, т.к. это подает знак компилятору, что команды отдельные.
    2 пользователям это нравится.
  4. fleks.online Пользователи

    Сообщения:
    41
    Лайки:
    6
    Пол:
    Мужской
    Репутация:
    0
    Команда:
    [DeS] Pw
Черновик сохранён Черновик удалён

Поделиться этой страницей