пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ


Алфавит языка Си. Идентификаторы.Комментарии. Состав программы. Ключевые слова языка.

Программа на языке Си это текстовый файл с расширением. c

Текст программы имеет определенную структуру:

1. заголовок

2. включение необходимых внешних файлов

3. ваши определения для удобства работы

4. объявление глобальных переменных

Перед использованием переменной в Си её необходимо объявить! Т.е. указать компилятору какой тип данных она может хранить и как она называется.

Глобальные переменные объявляются, вне какой либо функции. Т.е. не после фигурной скобки {. Они  доступны в любом месте программы, значит можно читать их значения и присваивать им значения там, где требуется.

5. описание функций - обработчиков прерываний

6. описание других функций используемых в программе

7. функция main - это единственный обязательный пункт !

 

Это не жесткий порядок, а ориентировочный!

Иногда п. 6 - это прототипы функций, а сами функции описываются полностью после п. 7.

Прототип функции - показывает образец того, как применять функцию в программе, какие значения в нее передаются и, если она возвращает какое-то значение, то прототип указывает тип возвращаемых данных. Прототип не имеет скобок { }, а после скобок ( ) ставится знак ;.

Функция - имеет { "тело" } в фигурных скобках. Тело - это код на Си определяющий то, что делает функция. Знак «;» после функции не ставится.

 

Программа на Си начинает работу с функции main(), по необходимости из main() вызываются другие функции программы, по завершении работы функции программа возвращается в main(), в то место, откуда функция была вызвана.

main(){
 

... какой то код программы ...

вызов функции_1; /* программа перейдет в функцию_1 строка программы */

// будет выполнятся после

// возврата из функции_1

... какой то код программы ...

}

Функции могут вызываться не только из main(), но и из других функций.

 

Ключевые слова

Borland С++ включает в себя все ключевые слова, определенные в языке С, и добавляет к ним ряд новых ключевых слов, показанных в таблице. Нельзя использовать ключевые слова в качестве имен переменных или функций. Ключевое слово __rtti является специфическим для Borland С++ и не определено в проекте стандарта ANSI С++.

asm
bool
catch
class
const_cast
delete
dynamic_cast
explicit
false
friend
inline

mutable
namespace
new
operator
private
protected
public
reinterpret_cast
__rtti
static_cast
template

this
throw
true
try.
typeid
typename
using
virtual
wchar_t

Таблица: Ключевые слова Borland С++

Два новых типа данных

Просматривая список ключевых слов таблицы, можно заметить добавление двух новых встроенных типов: bool и wchar_t. Тип данных bool предназначен для булевых величин. Они могут принимать только два значения — true и false. Значения true и false также являются ключевыми словами и служат частью языка С++. При употреблении булевых типов в небулевых выражениях они автоматически преобразуются к типу целых чисел. Хотя С++ определяет тип данных bool, он продолжает полностью поддерживать фундаментальную концепцию о том, что ненулевые целые числа соответствуют значению истина, а нулевое значение соответствует значению ложь.

Тип wchar_t поддерживает широкие символы, обычно являющиеся 16-битовыми значениями. Они обычно используются для представления набора букв в языках, для которых недостаточно 255 символов. Тип wchar_t поддерживается в С путем определения типа с использованием typdef. В С++ этот тип стал ключевым словом.

 

 

Алфавит языка СИ

 

1. Прописные и строчные буквы латинского алфавита;

2. Цифры от 0 до 9;

3. Спецзнаки (-, /, ., [], (), +, -) и др.;

4. В комментариях, строках и символьных константах могут использоваться русские буквы.

Комментарий формируется как последовательность знаков ограниченных слева символами /*, а справа */. Комментарий может отделяться слева символом // (в этом случае комментарий может быть записан только в одну строку).

Пример:

/* Курсивом я пишу комментарий к программе в Си он может быть написан в несколько строк  */

// или в одну строку, после двух черточек. Курсив взят условно, для лучшей усвояемости.

// Курсив взят условно, для лучшей усвояемости.

 

Идентификатор – это последовательность букв, цифр и символов подчеркивания, которые начинаются с буквы или символа подчеркивания.

Прописные и строчные буквы различаются  идентификаторами, обозначающими служебные слова, константы, строковые константы, знаки операций, знаки пунктуации.

Служебные слова – это зарезервированные в языке идентификаторы, которые нельзя выбирать в качестве имен переменных и констант.

Примеры служебных слов:

- double

- goto

- void

 

Идентификаторы

Идентификатор является последовательностью символов использованных, чтобы определить следующие объекты:

·         объекты или имена переменных

·         классы структуры и объединения

·         члены классов, структур, объединений и перечислений

·         функции или функции классов

·         имена typedef

·         метки

·         имена макросов

·         параметры макросов

Имена идентификаторов могут состоять из символов:

_ a b c d e f g h i j k l m
n o p q r s t u v w x y z
A B C D E F G H I J K L M
N O P Q R S T U V W X Y Z

И чисел:

0 1 2 3 4 5 6 7 8 9

Специфика Microsoft. Значимыми являются только первые 274 символа.

Первый символ должен быть обязательно либо символом в любом регистре либо знаком подчеркивания _. В C++ регистр символов различается. Вот пример с двумя различными переменными.

int Name;
int name;

Идентификаторы не должны совпадать с ключевыми словами. Например, нельзя создать идентифкатор int, так как int это ключевое слово.

Старайтесь не использовать двойное подчеркивание __, так как это может вызвать конфликты в текущих или будущих версиях.

 

Комментарии

Комментарии - это текстб который игнорируется при интерпритации, что бывает полезно программистам для пояснения тех или иных участков кода. Компилятор обрабатывает комментарии как пустое пространство. Комментарии можно использовать и для временного отключения части кода при отладке.

В C++ есть два типа коментариев.

·         Стандартное комментирование блока /* ... */ как в C

·         Комментирование линии с использованием //

Пример комментария в стиле C:

#include"stdafx.h"
#define asb 100 
int main(int argc,char* argv[])
{
  /*
  printf("Hello C++\n");
  return -1;
  */
  printf("Hello World!\n");
  return 0;
  
}

То же самое используя новую возможность C++:

#include"stdafx.h"
#define asb 100 

 
int main(int argc,char* argv[])
{
  //printf("Hello C++\n");
  //return -1;
  printf("Hello World!\n");
  return 0;
  
}

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

#include"stdafx.h"
#define asb 100 

 
int main(int argc/*количенство */,char* argv[])
{
  //printf("Hello C++\n");
  //return -1;
  printf/*функция печати*/("Hello World!\n");
  return 0; // возврат программы
}

Кстати у коментария // есть еще одно интересное свойство. Данный код скомпилируется с ошибкой:

int main(int argc, // \
          char* argv[])
{
  printf("Hello World!\n");
  return 0; 
  
}

А этот нет, но с предупреждением:

int main(int argc, // \
это коментарий
          char* argv[])
{
  printf("Hello World!\n");
  return 0; 
}

 


27.12.2014; 10:36
хиты: 3581
рейтинг:0
Точные науки
информатика
Языки программирования
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь