* fix: imgur to s3 for russian guide without conflict (cherry picked from commit ac90750e36b0dd1fe508c69a2277b75be48e4b95) * fix: remove extra links Co-Authored-By: Randell Dawson <5313213+RandellDawson@users.noreply.github.com> * fix: revert unrelated changes * fix: revert changes
		
			
				
	
	
		
			55 lines
		
	
	
		
			8.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			8.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
---
 | 
						||
title: C++ Compilers
 | 
						||
localeTitle: Компиляторы C ++
 | 
						||
---
 | 
						||
# Вступление к компиляторам на C ++
 | 
						||
 | 
						||
Чтобы начать работу с C ++, вам нужно немного узнать о компиляторах и как работает C ++ на вашем компьютере.
 | 
						||
 | 
						||
Когда все сказано и сделано, компьютеры понимают только один язык, машинный язык. Язык машины полностью состоит из двоичные биты, или 0s и 1s. Хотя можно было бы программировать в двоичном формате, это было бы невероятно утомительно и требовало много времени. Итак, мы, люди, разработали языки программирования, чтобы упростить разработку программного обеспечения. Язык сборки - прямой от 1 до 1 с машиной язык. Языки, такие как C, C ++ и COBOL, немного выше и их необходимо скомпилировать. Это еще больше. Языки как JavaScript и Python имеют компоненты, которые переводится на языки C ++ или других языков низкого уровня, прежде чем они будут скомпилированы, эффективно делая их «высшими» языками, чем C или C ++. Поскольку компьютерная архитектура состоит из электронных переключателей и кабелей, которые могут работать только с двоичными 1 и 0, вам нужен компилятор для перевода кода с высокого уровня C ++ на машинный язык, который может понять процессор.
 | 
						||
 | 
						||
Компиляторы - это служебные программы, которые принимают ваш код и преобразуют его в исполняемые файлы машинного кода. Когда вы запускаете компилятор во-первых, препроцессор читает исходный код (файл C ++, который вы только что написали). Препроцессор выполняет поиск любого предпроцессорные директивы (строки кода, начинающиеся с символа #). Директивы препроцессора вызывают препроцессор, чтобы каким-то образом изменить ваш код (обычно добавляя некоторую библиотеку или другой файл C ++). Далее, компилятор работает через препроцитированную строку кода путем перевода строки каждой строке в соответствующую инструкцию машинного языка. Это также выявит любые синтаксические ошибки, которые присутствуют в вашем исходный код и вызовет ошибку в командной строке. Наконец, если ошибок нет, компилятор создает объект файл с бинарным файлом машины, который необходимо запустить на вашем компьютере. Хотя объектный файл, созданный компилятором вероятно, достаточно, чтобы что-то сделать на вашем компьютере, он по-прежнему не является исполняемым исполняемым файлом вашей программы на C ++. Существует окончательный важный шаг для достижения исполняемой программы.
 | 
						||
 | 
						||
C ++ содержит обширную библиотеку, которая помогает выполнять сложные задачи, такие как ввод-вывод и аппаратное манипулирование. Вы можете включить эти библиотеки с препроцессорными директивами, но препроцессор автоматически не добавляет их в ваш код. Для того чтобы вы имели конечная исполняемая программа, другая утилита, известная как компоновщик, должна объединять ваши объектные файлы с библиотечными функциями необходимо для запуска кода. Подумайте об этом как о наличии всех необходимых блоков построить дом. Компилятор сделал все блоки, но компоновщик - тот, который объединяет их все вместе, чтобы наконец создать дом. Как только это будет сделано, теперь у вас есть исполняемый исполняемый файл!
 | 
						||
 | 
						||
## Как скомпилировать файл
 | 
						||
 | 
						||
Допустим, у вас есть файл C ++, `helloWorld.cpp` ...
 | 
						||
 | 
						||
### Если вы находитесь в Windows -
 | 
						||
 | 
						||
#### Использование и IDE, такие как CodeBlocks
 | 
						||
 | 
						||
Это так же просто, как нажать кнопки сборки и запуска, они создадут файл в папке проекта. 
 | 
						||
 | 
						||
#### Использование командной строки
 | 
						||
 | 
						||
1.  Откройте командную строку разработчика - для этого шага вам понадобится Microsoft Visual Studio или другая среда IDE, позволяет вам скомпилировать вашу программу из командной строки. Вы также можете искать онлайн-компиляторы C ++.
 | 
						||
    
 | 
						||
2.  Перейдите непосредственно к исходному коду
 | 
						||
    
 | 
						||
3.  Запустите компилятор в исходном коде (при условии, что вы используете компилятор Microsoft Visual Studio) `cl /EHsc helloWorld.cpp`
 | 
						||
    
 | 
						||
 | 
						||
Теперь это создаст объектный файл и автоматически свяжет его для вас. Если вы посмотрите в ту же папку, вы увидите В настоящее время присутствует исполняемый файл hellWorld.exe (обратите внимание на расширение exe).
 | 
						||
 | 
						||
4.  Введите `helloWorld` в приглашение для запуска исполняемого файла
 | 
						||
 | 
						||
Кроме того, многие IDE позволяют быстро создавать и просматривать вашу программу. Это может быть проще, так как ваша версия окна могут не быть предварительно упакованы с помощью утилиты компилятора.
 | 
						||
 | 
						||
### Если вы находитесь в Linux или OSX -
 | 
						||
 | 
						||
1.  Откройте окно терминала и перейдите в каталог исходного кода
 | 
						||
2.  Запустите компилятор в исходном коде `g++ helloWorld.cpp -o helloWorld`
 | 
						||
 | 
						||
Это создаст объектный файл и автоматически свяжет его для вас. Посмотрите в папку, и вы увидите helloWorld.exe исполняемый файл (обратите внимание на расширение exe).
 | 
						||
 | 
						||
3.  Введите `./helloWorld` в окне терминала, чтобы запустить исполняемый файл
 | 
						||
 | 
						||
g ++ является стандартным компилятором Linux и является отличной утилитой. Он поставляется в комплекте с операционной системой.
 | 
						||
 | 
						||
ЗАМЕТКА: непосредственно компилировать и выполнять свой код, запускать `g++ -o helloWorld helloWorld.cpp; ./helloWorld` поэтому, когда вам нужно многократно компилировать и запускать код, вверх стрелка-введите
 | 
						||
 | 
						||
* * *
 | 
						||
 | 
						||
Существует несколько разных типов компиляторов. Два из них - это два, которые обычно упаковываются вместе с Windows или Linux / OSX. |