Как написать программу на c
Перейти к содержимому

Как написать программу на c

  • автор:

Как написать программу на c

В статье мы напишем пару простейших программ на C++ и посмотрим, как происходит их компиляция.

Следуйте инструкциям. Также выполните задания, указанные в тексте.

Создаём каталог проекта

Перейдите в каталог пользователя, и создайте каталог, в котором вы будете размещать свои проекты. Его можно назвать, например, “lw1” (laboratory work 1)

Иллюстрация

В Visual Studio Code откройте этот каталог. Для этого используйте меню “File”>”Open Folder…”.

Иллюстрация

Теперь вы можете добавить новый файл в каталог прямо из Visual Studio Code. Попробуйте, это так просто!

Иллюстрация

Простейшая программа

Откройте редактор, создайте файл hello.cpp и перепишите следующий текст:

Скриншот

Это — минимальная программа на языке C++. Она выводит в терминал строку “Hello, world!” и завершается. Она состоит из:

  • директива #include подключит библиотеку потоков ввода-вывода, в том числе станут доступны поток вывода std::cout и манипулятор std::endl.
  • функция main служит точкой входа в программу в тот момент, когда операционная система запускает программу
  • в функции сейчас находится ровно одна инструкция, которая передаёт строку в поток вывода cout и затем передаёт туда же манипулятор endl (сокращение от endline), чтобы добавить перенос строки и завершить операцию вывода cout

Сохраните файл — это можно сделать в меню “File” либо горячей клавишей Ctrl+S :

Скриншот

Затем откройте терминал. В Visual Studio Code терминал можно открыть в меню “Вид”>”Интегрированный терминал” либо сочетанием клавиш “CTRL + `”

Скриншот

Введите в терминале команду dir . Команда выведет список файлов, и среди этих файлов должен быть файл hello.cpp .

Введите команду g++ —version . Программа g++ — это компилятор C++ из состава GCC (GNU Compiler Collections). Передав ей флаг —version , вы заставите программу вывести свою версию и завершиться. Ожидается, что у вас будет g++ 7.0 или выше:

C:\Code\CppProjects>g++ --version g++ (GCC) 7.2.0 Copyright (C) 2017 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 

Введите команду g++ hello.cpp -o hello . Эта команда компилирует файл hello.cpp в исполняемую программу называет исполняемый файл hello.exe на платформе Windows либо hello на Linux и MacOSX. Команда не должна выводить чего-либо, она должна просто успешно завершиться.

Теперь вы можете запустить исполняемую программу hello.exe , набрав в терминале команду hello .

C:\Code\CppProjects>hello Hello, world! 

Задание cpp1.1

Убедитесь, что у вас есть файл hello.cpp , в котором записана работоспособная программа “Hello, World”. Доработайте программу, чтобы вместо “Hello, World” она выводила “Hello, Name”, где Name — ваше имя в английской транскрипции.

Ошибки компиляции

Теперь попробуем составить неправильную программу. Например, уберём символ ; в конце единственной инструкции:

Скриншот

Запустите компиляцию снова. Вы увидите ошибку компиляции, примерно такую:

C:\Code\CppProjects\other>hello Hello, world! C:\Code\CppProjects\other>g++ hello.cpp -o hello hello.cpp: In function 'int main()': hello.cpp:6:1: error: expected ';' before '>' token > ^ 

Компилятор достаточно умён, чтобы показать вам точное место ошибки и способ её исправления! Именно поэтому сообщения от компиляторов C/C++ следует внимательно читать.

Теперь попробуем внедрить другую ошибку: точку с запятой вернём на место, а в названии cout перепутаем две буквы: “cuot”

Скриншот

Запустите компилятор и прочитайте сообщение. Оно должно быть таким:

C:\Code\CppProjects\other>g++ hello.cpp -o hello hello.cpp: In function 'int main()': hello.cpp:5:10: error: 'cuot' is not a member of 'std' std::cuot  

Компилятор снова показал себя с лучшей стороны: он догадался, что программист опечатался, и предложил свой вариант замены. К сожалению, вариант не самый удачный: компилятор предложил clog вместо cout . Тем не менее, во многих случаях компилятор угадывает правильно.

Задание cpp1.2

  • Попробуйте самостоятельно найти такую опечатку в слове cout, чтобы компилятор правильно предложил способ исправления опечатки.
  • Этот вариант программы сохраните в файле hello_err.cpp , чтобы затем показать преподавателю.

Вывод в стиле языка C

Вывод в cout, которым мы воспользовались, относится к языку C++. Есть и другой способ: C++ позволяет использовать возможности языка C, в том числе функции ввода-вывода в стиле языка C.

Мы воспользуемся функцией std::puts. Для доступа к ней надо подключить . Теперь программа будет выглядеть так:

Скриншот

Выполните в терминале команду del hello.exe для удаления старого исполняемого файла, затем g++ hello.cpp -o hello для компиляции и запустите программу hello.exe . Вы должны получить тот же результат, что и раньше:

C:\Code\CppProjects\other>hello Hello, world! 

Ввод-вывод

Теперь напишем программу, которая читает два числа из стандартного ввода и пишет их обратно в стандартный вывод. Эта программа будет использовать функции языка C: std::scanf и std::printf .

Создайте файл ab.cpp и напечатайте в нём следующий код:

Скриншот

Скомпилируйте код командой g++ ab.cpp -o ab . Запустите, и введите

  • два целых числа: 12 88
  • одно целое число и одно число с плавающей точкой: 12 88.7
  • одно целое число и одну букву f: 12 f
  • только букву f: f
  • ничего не вводить, сразу нажать “Ctrl+Z” на Windows или “Ctrl+D” на остальных платформах, что означает “конец ввода”

Если что-то пошло неправильно, вы можете нажать в терминале Ctrl+C для завершения программы.

Мы прокомментировали код, чтобы вы поняли, что происходит. В языке C++ однострочные комментарии начинаются с символов // . Комментарии помогают понять текст программы, и поэтому хороший комментарий поясняет намерение там, где оно не очевидно из кода. Плохие комментарии поясняют очевидные вещи: писать такое — бесполезный труд. В то же время хороший комментарий может уберечь программиста от неосторожных и неправильных действий.

// Подключаем заголовок cstdio из стандартной библиотеки #include // Определяем функцию main, возвращающую целочисленный код завершения. int main()  // Объявляем переменные a и b, инициализируем их нулями. int a = 0; int b = 0; // Считываем из стандартного ввода данные в определённом формате: "%d %d" // "%d" означает "считать целое число и положить результат по переданному адресу", // " " означает "считать любое количество пробелов" // адреса для записи считанных значений передаются в дополнительных аргументах, начиная со 2-го // Документация: https://www.opennet.ru/man.shtml?topic=scanf&category=3&russian=0 std::scanf("%d %d", &a, &b); // Записываем данные в определённом формате: "%d %d\n" // "\n" кодирует символ переноса строки // Документация: https://www.opennet.ru/man.shtml?topic=printf&category=3&russian=0 std::printf("%d %d\n", a, b); > 

Теперь доработаем программу

Задание cpp1.3

Создайте файл abc.cpp и напишите программу, которая читает три числа и складывает их, а результат выводит в терминал.

Решение линейного уравнения

Рассмотрим линейное уравнение ax + b = 0 — оно также называется уравнением прямой. Мы напишем программу, способную решать такие уравнения. Но прежде чем приступить к кодированию, мы составим план действий с помощью комментариев:

#include int main()  // 1. prompt user to enter coefficients // 2. read coefficients for equation `ax + b = 0` // 3. solve equation `ax + b = 0` // solution: `x = -b / a` > 

Первый шаг мы реализуем с помощью puts. Второй — с помощью scanf и объявления переменных a, b. Третий шаг - с помощью printf. Создайте файл linear_equation.cpp .

Перепечатайте в него следующий код:

Скриншот

Скомпилируйте программу и запустите её. Попробуйте ввести две пары коэффициентов:

Везде ли программа решила задачу правильно?

Числа с плавающей точкой

Конечно же, решить уравнение в целых числах получится не всегда. Но в C++ есть поддержка чисел с плавающей точкой:

  • тип данных называется float
  • ему соответствует формат %f для scanf и printf

Перепишите программу следующим образом:

Скриншот

Попробуйте снова ввести две пары коэффициентов:

Как вы думаете, что получилось в последних двух случаях? Почему такое происходит?

Задание cpp1.4

Создайте файл square_equation.cpp и напишите программу, которая читает три коэффициента уравнения ax^2+bx+c=0 и вычисляет корни уравнения.

  • Программа должна использовать числа с плавающей точкой.
  • Вам пригодится функция std::sqrt, помогающая извлечь квадратный корень; в документации к ней сказано, какой заголовочный файл требуется подключить через #include .

PS-Group

  • PS-Group
  • sshambir@gmail.com
  • ps-group
  • image/svg+xml sshambir

Материалы для курсов в Институте Программных Систем и в Волгатехе

Первая программа

Теги: Первая программа на си. Азы си. Си Borland. Си Code Gear. Си Embarcadero. Си MS Visual Studio. Си MS Express.

Пишем первую программу на си

Д ля начала, необходимо установить программное обеспечение. В принципе не важно, каким ПО вы будете пользоваться, также как не важна и операционная система. Но в течение всего курса я буду приводить примеры на MS Visula Studio 2012 Express Edition. Visual Studio 2012 Express Edition бесплатный и его за глаза хватит для изучения всего курса. Кроме того, как показала практика, он гораздо строже относится к коду и даёт более полноценное описание ошибок и предупреждений. При изучении языка можно использовать Borland (он же CodeGEAR, он же Embarcadero и т.д.), Dev Cpp, MinGW, или gcc, или что вы ещё захотите.

  • Пример для Visual Studio
  • Пример для Borland
  • Пример для cc/gcc
  • Код программы

Пример для MS Visual Studio

1. Открываем IDE, заходим Файл | Создать проект.

Создаём проект.

2. Выбираем консольное приложение и даём ему имя. В данном случае first_program

Выбираем

Далее.

4. Ставим галочку "Пустой проект".

Создаём пустой проект.

5. После чего получаем пустую структуру проекта. Добавим новый элемент: правый клик мыши по папке
"Файлы исходного кода" | Добавить | Создать элемент.

Добавляем файл в проект.

Добавляем новый cpp файл, но сохраняем его с расширением .c

Создаём .c файл.

Я назвал файл main.c Всё, готово, можно писать программу. Пропустите шаги для других платформ.

Borland

У меня установлен только Code Gear C++Builder 2007, но в остальных (и предыдущих) релизах всё делается также.

1. Создадим новый проект File | New | Other.

Создаём новый проект.

2. Добавляем консольное приложение

Добавляем консольное приложение.

3. Выбираем язык си

Выбираем язык си.

4. Получаем готовый проект. Его необходимо сохранить с тем именем, которое захотите. До тех пор сам проект и все файлы будут иметь имена по умолчанию. Вы можете удалить то, что Borland по умолчанию прописал в тексте программы.

Готовый проект на борланде. Его необходимо сохранить.

Пример для cc/gcc для терминала

О ткройте ваш любимый текстовый редактор и скопируйте туда код программы.

#include int main(int argc, char* argv[])

Если вы сохранили программу в файле с именем hello.c, то наберите в терминале команду

cc hello.c -o hello

либо

gcc hello -o hello

При этом, очевидно, вы должны находиться в папке с программой. gcc создаст исполняемый файл с именем hello. Запустите его, и он выведет Hello, World!

./hello

Иногда могут возникнуть проблемы с правами доступа. Проверьте, что у вас исполняемый файл, иначе дайте себе привелегии на запуск.

chmod 760 hello

Если у вас несколько файлов, то необходимо будет перечислить имена всех си файлов по порядку. Например, если у вас есть ещё два файла simple.h и simple.c, то нужно прописать

cc hello.c simple.c -o hello

Код программы

Принято в первой программе выводить Hello, World! на экран.

#include #include int main(int argc, char* argv[])

Запустите программу ( Run | Run или F9 для борланда, Построение | Построить решение или F5 для MS) Программа выведет Hello, World! и будет ждать, когда вы нажмёте на любую клавишу.

Рассмотрим код подробнее. Первые две строки

#include #include

директивы компилятору на подключение стандартных библиотек stdio (Standard Input Output - стандартная библиотека ввода вывода) и conio (Console Input Output - стандартная библиотека консоли вывода вывода). Расширение .h указывает, что это заголовочные файлы (header files). Компилятор копирует код библиотек conio и stdio, и даёт возможность использовать функции, описанные в этих библиотеках.

int main(int argc, char* argv[])

Это функция main. Она отличается от остальных функций, которые вы можете определить тем, что является точкой входа - с неё начинается выполнение программы.

Функция main имеет два параметра - число параметров argc и массив переданных параметров argv. Эти аргументы необязательные, поэтому можно их не писать. Об их использовании поговорим позже.

#include #include int main()

Функция main должна возвращать целое число. Если это 0, то функция отработала без ошибок. В современном стандарте си можно не возвращать 0, и описать функцию как void main.

#include #include void main()
Наша программа теперь выглядит совсем просто. Строка

printf("Hello, World!");

выводит строку Hello, World! на экран монитора.

_getch()

ожидает нажатия на клавишу.

Давайте сделаем что-нибудь посложнее, чтобы научиться добавлять новые файлы в программу. Сейчас для вас важно научиться добавлять новые файлы, если часть кода останется непонятной, это не беда.
1. Создайте новый заголовочный файл в папке "Заголовочные файлы", назовите его simple.h
2. Создайте новый файл simple.c в папке "Файлы исходного кода".
3. Добавьте в simple.h

#ifndef _SIMPLE_H_ #define _SIMPLE_H_ #include #include void doSomething(); #endif

Здесь мы объявили новую функцию doSomething. У неё отсутствует тело, оно будет описано в файле simple.c. Здесь же мы подключаем и библиотеки stdio и conio
Добавьте в simple .c

#include "simple.h" void doSomething()

Мы включаем в файл simple.c заголовочный файл. Он пишется в двойных кавычках, потому что это не файл из стандартной библиотеки. Файлы стандартной библиотеки обычно располагаются в папке include самой IDE. Если поместить туда наши файлы, то их тоже можно будет объявлять в угловых скобках. В двойных кавычках можно также прописывать абсолютные пути к файлам. Так как мы уже включили библиотеки conio и stdio в .h файле, то они "видны" и в .c файле.
Далее, в main.c

#include "simple.h" int main(int argc, char* argv[])

Мы подключаем только заголовочный файл. Содержимое simple.c будет добавлено автоматически. Собираем проект (F5 или F9, или что там у вас за среда. ) Если у вас всё заработало то отлично, вы научились добавлять новые файлы в проект.

ru-Cyrl 18- tutorial Sypachev S.S. 1989-04-14 sypachev_s_s@mail.ru Stepan Sypachev students

email

Всё ещё не понятно? – пиши вопросы на ящик

Язык Си в примерах/Простейшая программа «Hello World»

Первая программа, которую мы рассмотрим, — это «Hello World» — программа, которая выведет на экран строку текста «Hello, World!» («Здравствуй, мир!») и закончит своё выполнение.

#include int main (void)  puts ("Hello, World!"); return 0; > 

Посмотрим на неё внимательно. Первая строка — #include — означает «включи заголовок stdio.h ». В этом заголовке объявляются функции, связанные с вводом и выводом данных. [1] [2]

Аббревиатуру stdio можно перевести как стандартный ввод-вывод (англ. standard input/output ). Буква «h» после точки означает заголовок (англ. header ). В заголовках (которые как правило представлены отдельными заголовочными файлами) обычно объявляются предоставляемые соответствующими им библиотеками функции, типы данных, константы и определения препроцессора. [3]

Далее идёт определение функции main . Оно начинается с объявления:

int main (void) 

что значит: «функция с именем main , которая возвращает целое число (число типа int от англ. integer ) и у которой нет аргументов (void) »

В качестве варианта, стандарт допускает определение функции main как функции двух аргументов ( int argc и char *argv[] — имена, разумеется, могут быть произвольными), что используется для получения доступа к аргументам командной строки из программы. В данном случае, эта возможность не требуется, поэтому функция определена как безаргументная (что также явно разрешено стандартом.) [4]

Английское слово void можно перевести как «пустота». Далее открываются фигурные скобки и идёт тело функции, в конце фигурные скобки закрываются. Функция main — главная функция программы, именно с нее начинается выполнение программы.

Тело функции, в свою очередь, определяет последовательность действий, выполняемых данной функцией — логику функции. Наша функция выполняет одно единственное действие:

puts ("Hello, World!"); 

Это действие, в свою очередь, есть вызов функции puts стандартной библиотеки. [5] В результате выполнения этого вызова, на стандартный вывод (которым, скорее всего, окажется экран или окно на экране) печатается строка Hello, world! .

Затем идёт команда return 0; , которая завершает выполнение функции с возвратом значения 0, определяемого стандартом (для функции main ) как код успешного завершения. [6] [7]

Вариант «классический» править

Этот вариант отличается использованием функций printf (вместо puts ) и getchar .

#include int main (void)  printf ("Hello, World!\n"); getchar (); return 0; > 

В отличие от функции puts , выводящей переданную в качестве аргумента символьную строку, первый и обязательный аргумент функции printf определяет формат вывода. [8]

В общем случае, формат состоит из произвольного текста (не включающего символ % ) «перемешанного» с указателями преобразований (предваряемыми символом % ). В данном случае, однако, эта возможность не используется и никаких преобразований не выполняется.

Обратите внимание на появившуюся в строковой константе комбинацию \n — она включает в выводимую строку управляющий код (или управляющий символ) перевода (также разрыва или завершения) строки. В отличие от функции puts , всегда добавляющей этот код к выводимой строке, printf требует явного его указания.

Действующая редакция стандарта определяет семь таких комбинаций, причем все они записываются с помощью символа обратной косой черты \ (см. ASCII коды символов). [9]

Обратим внимание и на следующее новшество:

getchar (); 

Окружение, в котором запускается программа, как правило можно настроить так, что вывод программы будет оставаться на экране после ее выполнения неограниченно долго. Проще всего это обеспечить вызывая программу из командного интерпретатора (который, в свою очередь, может быть запущен в окне эмулятора терминала) или (в зависимости от системы) окна Cmd.exe.

Однако, при запуске непосредственно из графического окружения, отведенное программе окно может закрыться сразу же после завершения программы. Функция getchar [10] ожидает ввод пользователя, тем самым «откладывая» завершение программы ( return ). Какие именно действия могут прервать это ожидание — зависит от системы, однако можно надеяться, что нажатие клавиши ⏎ Enter завершит эту функцию в любой системе.

В некоторых руководствах для этой же цели предлагается функция getch . Однако, эта функция (в отличие от getchar ) не является стандартной и, к тому же, зависима от платформы. Так, в некоторых системах использование getch требует включения файла curses.h и предшествующего вызова функции initscr . В других системах, однако, getch может быть объявлена в conio.h , и выполнение initscr — не требуется.

Вариант «экзотический» править

Наконец, рассмотрим следующий, выходящий за рамки стандарта, вариант этой программы.

#include int main (void)  MessageBox (0, "Hello, World!", "Message", MB_OK); return 0; > 

Использование заголовка windows.h может произвести впечатление приемлемости этого варианта кода в рамках только лишь одной конкретной системы. Однако, для использованного здесь интерфейса существует и независимая свободная реализация — Wine, — позволяющая собрать и выполнить данный вариант на таких системах, как, например, GNU/Linux, FreeBSD, Solaris и Mac OS X.

См. также править

Примечания править

  1. ↑ В действительности, #include <. >— это директива препроцессора, то есть команда, которая выполняется до начала компиляции файла. Смысл этой директивы очень прост и заключается в том, чтобы на место, где указана эта директива, вставить содержимое файла, имя которого указано в угловых скобках. Обычно заголовочные файлы содержат только прототипы функций, то есть просто список функций с указанием аргументов и типа возвращаемого значения.
  2. ↑6.10.2 Source file inclusion (англ.) WG14 N1570 Committee Draft. ISO/IEC (2011-04-12). Проверено 2012-11-19 г.
  3. ↑7.21 Input/output stdio.h (англ.) WG14 N1570 Committee Draft. ISO/IEC (2011-04-12). Проверено 2012-11-19 г.
  4. ↑5.1.2.2.1 Program startup (англ.) WG14 N1570 Committee Draft. ISO/IEC (2011-04-12). Проверено 2012-11-19 г.
  5. ↑7.21.7.9 The puts function (англ.) WG14 N1570 Committee Draft. ISO/IEC (2011-04-12). Проверено 2012-11-19 г.
  6. ↑5.1.2.2.3 Program termination (англ.) WG14 N1570 Committee Draft. ISO/IEC (2011-04-12). Проверено 2012-11-19 г.
  7. ↑7.22.4.4 The exit function (англ.) WG14 N1570 Committee Draft. ISO/IEC (2011-04-12). Проверено 2012-11-19 г.
  8. ↑7.21.6.1 The fprintf function (англ.) WG14 N1570 Committee Draft. ISO/IEC (2011-04-12). Проверено 2012-11-19 г.
  9. ↑5.2.2 Character display semantics (англ.) WG14 N1570 Committee Draft. ISO/IEC (2011-04-12). Проверено 2012-11-19 г.
  10. ↑7.21.7.6 The getchar function (англ.) WG14 N1570 Committee Draft. ISO/IEC (2011-04-12). Проверено 2012-11-19 г.

Как писать программы?

День добрый уважаемые пользователи CyberForum.Ru
Итак перейдем к делу:
Я решил приняться за изучение С++ но пообщавшись на форумах многие мне начали писать что начать лучше с обыкновенной: старой,доброй "C"
Накачал я учебников,инструкций. вот сижу читаю,все нормально НО пока не дохожу к созданию своей так сказать "первой программы" на C.
Как только дело доходит до программы - все,капец! ни в одном найденном мною учебнике не объясняют как же программировать на C в случае использования Windows 7. так вот: дойдя до написания первой программы я скачал Micrisoft Visual C++ 2008,в ней я вообще разобраться нифига не в состоянии! создал новый проект. а что именно создавать для предоставленных в учебниках программ? консольное приложение? DLL? ЧТО? я вообще нуб нифига не понимаю! в консольном приложении создается для проги куча не понятных вкладок и я вообще не понимаю где писать само дело программы.
По этому срочно прошу о помощи! Помогите позязя! как начать работать с Си.
Любые ответы которые помогут мне разобраться пишите в теме или-же в skype:
*********
Прошу вас не оффтопить в теме!
Спасибо за внимание для нуба!

Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

На чем лучше писать программы на Си
Сейчас я пишу программы на Visual Studio 2012 и понимаю что это смахивает на извращение,потому что.

Зачем в scanf писать тип данных, если в начале программы это и так пишется?
если переменная a имеет тип integer , то зачем это указывать в printf.

Как писать в VB2012 на чистом C?
Собственно, вопрос в заголовке.

Как можно писать на Си в Visual Studio
Здравствуйте, как можно писать на Си в Visual Studio? Плагина как такового нет. P.S:Знаю что есть.

1806 / 1269 / 936
Регистрация: 12.02.2013
Сообщений: 2,064

Лучший ответ

Сообщение было отмечено Байт как решение

Решение

Для начала можно вообще без среды.

1. Качаем компилятор: GCC, Tiny C или ещё какой-нибудь.
2. Распаковываем в удобное место.
3. Добавляем в переменную окружения Path путь до компилятора (т.е. до папочки bin). Ставим в конце точку с запятой и вписываем директорию.

4. Запускаем cmd и проверяем наличие компилятора. (Для GCC - gcc; для Tiny C - tcc; для CLANG - clang; для Visual Studio - cl; для Digital Mars - dmc и т.д).
5. Теперь с помощью командной строки cmd переходим в директорию где будет исходный файл программы.
6. Создаём в этой директории пустой файл с расширением *.c и открываем его в любимом текстовом редакторе (Sublime Text 2, Notepad++ и т.п.)
7. Пишем тестовую программу:

1 2 3 4 5 6
#include int main() { printf("This is my first program in C language"); return 0; }

8. Компилируем в командной строке: <ИМЯ КОМПИЛЯТОРА><ИМЯ ПРОГРАММЫ>
9. Запускаем программу (gcc по умолчанию создаёт не одноименный исполняемый файл, а a.exe) через командную строку.

Регистрация: 27.11.2013
Сообщений: 138

ЦитатаСообщение от anmartex Посмотреть сообщение

Для начала можно вообще без среды.
1. Качаем компилятор: GCC, Tiny C или ещё какой-нибудь.
2. Распаковываем в удобное место.
3. Добавляем в переменную окружения Path путь до компилятора (т.е. до папочки bin). Ставим в конце точку с запятой и вписываем директорию.
4. Запускаем cmd и проверяем наличие компилятора. (Для GCC - gcc; для Tiny C - tcc; для CLANG - clang; для Visual Studio - cl; для Digital Mars - dmc и т.д).
5. Теперь с помощью командной строки cmd переходим в директорию где будет исходный файл программы.
6. Создаём в этой директории пустой файл с расширением *.c и открываем его в любимом текстовом редакторе (Sublime Text 2, Notepad++ и т.п.)
7. Пишем тестовую программу:
CВыделить код
1
2
3
4
5
6
#include
int main() * * printf("This is my first program in C language");
* * return 0;
>
8. Компилируем в командной строке:
9. Запускаем программу (gcc по умолчанию создаёт не одноименный исполняемый файл, а a.exe) через командную строку.

Не работает
Почетный модератор

Эксперт по компьютерным сетямЭксперт Windows

28044 / 15777 / 982
Регистрация: 15.09.2009
Сообщений: 67,752
Записей в блоге: 78
Регистрация: 30.04.2012
Сообщений: 186

Для Mr-Crazy и других, кому непонятно как писать первые программы на C.

Если не всё понятно и начатая тема не закрыта, то задавайте здесь свои вопросы!

41 / 41 / 15
Регистрация: 29.12.2016
Сообщений: 291

S5360, Скачай MINGW, установи его в диск C:\MinGW, при установке будет окошко с настройками выбери " x86 - x64 вместо 686 и win32 вместо posix. После установки, зайди в "Панель управления windows", далее пункт "Система", далее пункт, "Дополнительные параметры системы", внизу будет кнопочка "Переменные среды", нажимаешь на нее, появится новое окно, в разделе "Системные переменные" ищешь переменную "PATH" или "Path", нажимаешь кнопку "Изменить", идешь в самый конец списка путей НИЧЕГО НЕ СТИРАЯ. пишешь [B];C:\MinGW\mingw64\binB], ну или 32, если система 32 битная. На всех окошках жмешь ОК. Перегрузи систему. На диске С создай папочку Projects, в ней будут храниться твои проекты, зайди в нее и создай папку Helloworld, там будет храниться твоя первая программа, открой любой текстовый редактор и напиши такие строки:

1 2 3 4 5 6 7 8 9
#include /* Первая программа */ int main() { printf("Hello world!"); return 0; }

СОХРАНИ ФАЙЛ, под именем helloworld.c
Открой командную строку windows(консоль), перейди в папку проекта командой: cd C:\Projects\Helloworld
далее напиши команду: gcc helloworld.c -o hello
после того как программа скомпилируется набери команду: hello.exe

41 / 41 / 15
Регистрация: 29.12.2016
Сообщений: 291
Регистрация: 30.04.2012
Сообщений: 186

Mr-Crazy пишет:
дойдя до написания первой программы я скачал Micrisoft Visual C++ 2008,в ней я вообще разобраться нифига не в состоянии! создал новый проект. а что именно создавать для предоставленных в учебниках программ? консольное приложение? DLL? ЧТО? я вообще нуб нифига не понимаю!

Давайте разбираться.
Для начала лучше создать консольное приложение. Это - просто. Такие приложения часто используются, например для решения математических задач.
Micrisoft Visual C++ 2008 - вполне понятная программа-среда. У меня на ПК стоит 2010 и опишу шаги для неё.
1. Загрузить программу-среду.
2. Закрыть Начальную Страницу.
3. В Меню программы-среды нажать Файл и далее выбрать Создать >> Проект. Появится окно Создать Проект.
4. Раскрыть Visual C++ и выбрать Win32. Далее в Типах Проектов выбрать Консольное приложение Win32.
5. В нижней части окна Создать Проект записать в поле Имя: Project01. Ниже записать в поле Имя решения: Solution01. Нажать OK. Появится окно Мастер приложений Win32 - Project01.
6. Нажать Далее>. Посмотреть какие предлагаются параметры приложения (на будущее, часто выбирают Пустой проект), но ничего пока не менять. Нажать Готово. Открывается окно программы для редактирования файла исходного кода. Видим шаблон кода.
7. Набираем строку (в разделе include):
#include
Набираем две строки кода (после открывающей фигурной скобки):
printf("Hello, World!");
getch();
Сохранить.
Выполнить Построение > Построить решение
8. Всё! Ваша первая простая программа создана. Для того, чтобы её запустить на исполнение надо в Панели Инструментов нажать кнопку Начать отладку. Программа выведет на чёрное окно Консоли строку с текстом Hello, World!
Для завершения работы созданного Вами приложения нажмите Enter.
Далее выполнить: Файл Закрыть решение

Для закрепления можно повторить вышеприведённые шаги (присваивать имена Project02 и Solution02), но поставить галочку в Пустой проект (чтобы набирать самый простой исходный код для первоначального обучения).
Когда откроется окно Редактора исходного кода, надо с помощью правой кнопки мыши выполнить добавление в Проект файла с расширением *.cpp и дать ему имя main.
Потом в этом файле набрать следующий простой исходный код:
//My name
#include
#include
int main()
printf("My first program!");
getch();
return 0;
>
Далее Сохранить и потом выполнить Построение Построить решение.
Всё! Приложение создано. Можно запускать на исполнение.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *