Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Язык Си для начинающих! С нуля! Учим быстро и просто!


 
Автор выпуска Олег Маркатов
E-mail: markatof@mail.ru

 Здравствуйте, уважаемые читатели!

         В этом выпуске рассылки я расскажу о том, как можно запустить на выполнение те программы, о которых мы беседовали в прошлых выпусках. Мне известны разные версии компиляторов языка Си, которые работают на разных операционных системах. Компилятор может быть организован в виде оболочки (компилятор и редактор для набора текстов программ) или без нее, то есть в таком варианте, когда на вход подается файл созданный в каком либо текстовом редакторе. Сегодня я не буду останавливаться на компиляторах для операционных систем класса Unix и Linux. Расскажу только о тех, что работают под MS-DOS и Windows. Точнее, рассказ пойдет только о компиляторе Turbo C версии 2.0 – разработка Borland International Inc. Замечу, что архив с усеченным (но подходящим для 90% рассматриваемых нами задач – практически все кроме графики) вариантом занимает 1082 Кб в ZIP архиве. Этот архив я не могу выложить в Сеть, хотя разработка и старая (от 1987 г.), но существуют определенные правила распространения. Так вот, выложить в Сеть для свободной закачки я архив не могу, но могу передать моим ученикам для использования в некоммерческих целях. А потому будем соблюдать формальности. Вы пишите мне письмо, в котором сообщаете свои Ф.И.О с просьбой выслать архив для использования компилятора в некоммерческих учебных целях. Трафик у меня не ограничен, так что архив вышлю каждому, а лишних неприятностей из-за вкладывания на сайт рассылки архива я не хочу. Кстати, о сайте. Мне помогли зарегистрировать домен http://c-programmer.spb.ru,  на котором скоро будет размещен сайт этой рассылки. Домен уже виден в Сети, но пока поставлен редирект на один из сайтов, где можно заказать бесплатный пробный урок по программированию http://www.escc.ru/region/region.php?region=4675, но об этом дальше.



              Итак, возвращаюсь к файлам архив. В архиве можно найти компилятор оболочку tc.exe и вариант работающий из командной строки tcc.exe. Сейчас рассматриваю только tc.exe. Запустили этот файл. Нажатие клавиши F1 дает справку – help. На этом можно было бы и закончить, так как там все написано, но, тем не менее. Переход в меню управления F10. Для начала работы выбираем  File. Далее New. Попадаем в поле для набора программы (Edit). Набираем текст. Нажимаем F2 – сохранение программы – в первый раз попросит указать уникальное (то есть новое, отличное от noname.c) имя. Указываем и сохраняем. Затем F10. Пункт Run. Или одновременно жмем клавиши Ctrl и F9. Программа запускается. Если программа вида 
#include <stdio.h>
main() {printf(“Hello”);} то слово Hello мелькнет и сразу скроется за панелью – посмотреть консоль можно нажав одновременно Alt и F5. Вернуть панель назад – еще раз нажать одновременно Alt и F5. На этом кратко об оболочке все. Будут вопросы – будут и ответы, если нет, то считаю, что все и так понятно.

      Получил от читателей несколько вопросов – сейчас отвечу только на один по программированию, так как времени мало, а потому порекомендую где еще можно взять полезный материал. Итак, вопрос по программированию такой, какие аргументы могут быть у функции main и зачем они нужны?  В настоящее время большинство программ запускается не из командной строки, но было время, когда из командной строки MS-DOS запускались программы и утилиты (те же программы, но только служебные). Например, надо было отформатировать дискету – писали строку format a: /s  Видим, что есть программа format и два параметра a:  и /s. Первый указывает, что будем форматировать диск А, а второй, что надо перенести на него и файлы операционной системы. Итого, в общем виде, имя программы и далее через пробел некоторые комбинации символов через пробел – эти управляющие комбинации в программе обрабатываем и в соответствии с ними что-то делаем. 

Пример программы

#include<stdio.h>
#include<conio.h>
main(argc,argv)
int argc;
char *argv[];
{clrscr();
printf("\n agrc=%d",argc);
while(argc>0) {
printf("\n argc=%d argv[]=%s",argc,*argv);
*argv++;
argc--;} }
Результат работы если была запущена программа из командной строки так
C:\TC\STR.EXE /HELP /A
На экране видим
 agrc=3
 argc=3 argv[]=C:\TC\STR.EXE /HELP /A
 argc=2 argv[]=/HELP
 argc=1 argv[]=/A
Даю только разбор строки – можно было поставить проверки если только /HELP то печатай инструкцию о программе, если  /A давай краткий вывод информации, а если /HELP /A – то инструкцию и краткий вывод.

     Теперь ко второй группе вопросов о том, где можно взять дополнительную информацию. Я стараюсь давать текст увлекательно, познавательно и интересно, но времени у меня только на один два выпуска в неделю – на большее не хватит. Поэтому кому надо быстро рекомендую лекции по С и С++, которые можно найти на сайте http://www.intuit.ru  после каждой лекции идет тест, так что всегда есть возможность проверить свои знания. После того, как все лекции пройдены, можно сдать итоговый тест и получить сертификат о знании языка. Сдавать можно сколько угодно раз. За сдачу денег не берут – платите деньги,  только если нужен отпечатанный вариант. Вполне приемлемо – рублей 150, да еще 50-70 за пересылку (в зависимости от способа). Можно заказать сертификат на русском, можно на английском, а можно и два варианта сразу (но за двойную плату, естественно). Бумажный вариант сертификата полезен студентам-выпускникам, желающим устроиться на работу к работодателю заинтересованному в том, чтобы программер был не только крут сам по себе, но и дипломирован, причем, чем больше дипломов, тем лучше. Я знаю еще с десяток разных фирм, где можно заочно пройти тестирование и получить сертификаты (за разную стоимость сдачи). Если тема актуальна – пишите – расскажу. Мое отношение к текстам таково – процедура довольно полезная для самоконтроля, а потому рекомендую всем. Из зарубежных фирм назову только классику жанра Brainbench www.brainbench.com. О тестах на этом все, разве только то, что на сайте http://c-book.spb.ru  приведена информация о пособии, которое  подготовили коллеги из Санкт-Петербурга. Пособие называется “Язык Си в вопросах и ответах”. Авторы – профессор и три доцента. Пособие электронное (обычный вордовский файл без защиты, что позволят проверять фрагменты программ, по которым вопросы, копируя фрагменты через буфер обмена – защиты от копирования нет). Это небольшое пособие официально зарегистрировано в Фонде Алгоритмов и Программ (http://www.ofap.ru), как пример работы на тему разработки тестов для проверки знаний по языку Си. 

        Пришли еще несколько вопросов на тему, а где бы поучиться самым самым основам программирования, причем, чтобы обучение было заочным и после его прохождения  выдавали сертификат. Скажу честно, что такого курса для Си я не знаю, но есть курс “Введение в программирование” который ведет Европейская Школа Корреспондентского обучения. Знакомят с языками бейсик и паскаль. Получаете материалы уроков по почте, задания отправляете на проверку учителю. Курс рассчитан на  один год – 24 урока. Хотя можно двигаться и быстрее. О ценах, как пособий, так и курсов я в этой рассылке не говорю принципиально! Даю ссылку на Российское отделение Школы (работает во многих странах мира) прямо на форму подписки http://www.escc.ru/region/region.php?region=4675. Обратите внимание на то, что по этому курсу (а так же по другим, например, Web-дизайну) можно заказать пробный урок. Причем, пробник можно скачать с сервера, но можно заказать и в обычном бумажном варианте (доставка бандеролью бесплатно, так же как и сама методичка урока). Обучение на курсе “Введение в программирование”  я рекомендую, когда ко мне приходят  родители школьников и интересуются, что можно предложить детям, чтобы было просто, понятно и не слишком тяжело.

     На этом я завершаю сегодняшний выпуск рассылки. Кому нужен компилятор – пишите вышлю. Есть вопросы – задавайте. Следующий выпуск, возможно, я выпущу через неделю, так как сейчас работаю над сайтом рассылки.
         Желаю всем хорошего настроения, удачи, успехов в делах!
                                    Олег Павлович Маркатов.
E-mail: markatof@mail.ru

 

В избранное