VISUALC (Справочник по Visual С++)

2016-07-31СтудИзба

Описание файла

Документ из архива "Справочник по Visual С++", который расположен в категории "". Всё это находится в предмете "информатика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "рефераты, доклады и презентации", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "VISUALC"

Текст из документа "VISUALC"

Ключевые слова языка Visual C++

__аsm

dllimport2

__int8

naked2

__basedl

__except

__intl6

__stdcall

__cdecl

__fastcall

__int32

thread2

__declspec

__finally

__int64

__try

__dllexport2

__inline

__leave

Auto

Double

Int

struct

Break

Else

Long

switch

Case

Enum

Register

typedef

Char

Extern

Return

union

Const

Float

Short

unsigned

Continue

For

Signed

void

Default

Goto

Sizeof

volatile

Do

If

Static

while

Типы данных языка С++

Вид переменной

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

Примечание

Целые со знаком

int

long, long int

short, short int

Основной тип целых чисел

Длинное целое – могут иметь целое как минимум такого же размера, как самое большое int и, возмоно,больше

Короткое целое – могут иметь целое не больше самого маленького int а, возможно, и меньше.

Целые без знака

unsigned,

unsigned int

unsigned long,

unsigned int long

unsigned short,

unsigned int short

Имеют только нулевые и положительные значения. Они не могут быть больше самого большого возможного положительного числа. Числа таких типов подчиняются законам арифметики по модулю 2".

Символы

Char

unsigned char

Это типографские знаки, такие как А, $, 7 или %, а также специальные

Управляющие символы.

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

Float

double,

long float

Числа с плавающей точкой обычной точности.

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

Нестандартные типы данных, поддерживаемые Visual C++

Тип данных

Размер (в байтах)

Диапазон значений

__int8

1

от-128 до 127

__intl6

2

от –32768 до 32767

__int32

4

от –2147483648 до 2147483647

__int64

8

Приблизительно +/-9Е 18

Целые константы

Тип

Синтаксическое правило

Пример

Десятичный

Первая цифра 1-9, следующие цифры 0-9

77

-512

77385L

Шестнадцатеричный

Начинается с 0x или 0X; следующие цифры 0-9, a-f или A-F

0x4D

-0Х200

0x12e49

Восьмеричный

Начинается с 0; следующие цифры 0-7

0115

-01000

017067 L

Операции над указателями

Операция

Комментарии

ptr1= =ptr2

Сравнение на "равенство"

ptr1 != ptr2

Сравнение на "неравенство"

Ptr1 < ptr2

Сравнение на "меньше"

рtr1<= ptr2

Сравнение на "меньше или равно"

Рtr1 > ptr2

Сравнение на "больше"

ptr1>= ptr2

Сравнение на "больше или равно"

ptr1 - ptr2

Вычисление числа элементов массива между ptr1 и ptr2.

ptr1+ int_val

Вычисление указателя, отстоящего от ptr1на int_val"вверх"

ptr1 - int_val

Вычисление указателя, отстоящего от ptr1 на int_val "вниз"

ptr1++ (++ptr1)

Увеличение значения указателя на единицу

ptr1-- (--ptr1)

Уменьшение значения указателя на единицу

Арифметические операции

Операция

Описание

+

Прибавляет величину, находящуюся справа, к величине, стоящей слева

++

Унарная операция сложения. Прибавляет 1 к значению переменной, стоящей слева (постфиксная форма) или справа (префиксная форма)

--

Унарная операция вычитания. Она аналогична операции ++, но вычитает 1.Также имеет две формы

-

Вычитает величину, находящуюся справа, из величины, указанной слева

-

Унарный минус. Изменяет знак величины, стоящей справа

*

Умножает величину справа на величину, находящуюся слева

/

Делит величину, стоящую слева, на величину справа. Если оба опе­ранда целые числа, то результат усекается

%

Дает остаток от деления величины слева на величину, стоящую спра­ва, допустима только для целых чисел.

Операции отношения

Операция

Описание

Операция

Описание

<

Меньше

>=

Больше или равно

<=

Меньше или равно

>

Больше

==

Равно

!=

Не равно

Логические операции

Операция

Описание

&&

Логическое умножение (операция И). Результат равен "1" тогда и только тогда, когда оба операнда отличны от нуля, и "О" в противном случае.

||

Логическое сложение (операция ИЛИ). Результат равен "1", если хотя бы один из операндов отличен от нуля, и "О" в противном случае.

I

Логическое отрицание (операция НЕ). Результат имеет значение "истина", если операнд имеет значение "ложь", и наоборот.

Операции сдвига

Операция

Описание

<<

Сдвигает разряды левого операнда влево на число позиций, зада­ваемое правым операндом. Освобождающиеся позиции заполняются нулями, а разряды, сдвигаемые за старший разряд левого операн­да, теряются

>>

Сдвигает разряды левого операнда вправо на число позиций, зада­ваемое правым операндом. Разряды, сдвигаемые за младший раз­ряд левого операнда, теряются. Для чисел типа unsigned позиции, освобождающиеся слева, заполняются нулями. Для чисел со знаком заполнение зависит от реализации, а в Visual C++ заполнение осу­ществляется нулями

Операции присваивания

Операция

Описание

+=

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

-=

Вычитает величину, находящуюся справа, из величины, указанной слева, и записывает результат в переменную, стоящую слева

*=

Умножает величину справа на величину, находящуюся слева, и запи­сывает результат в переменную, стоящую слева

/=

Делит величину, стоящую слева, на величину справа, и записывает результат в переменную, стоящую слева, если оба операнда — це­лые числа, то результат усекается

%=

Дает остаток от деления величины слева на величину, стоящую спра­ва, и записывает результат в переменную, стоящую слева. Допусти­ма только для целых чисел

&=

Выполняет поразрядную операцию И над величинами и записывает результат в переменную, стоящую слева

|=

Выполняет поразрядную операцию ИЛИ над величинами и записыва­ет результат в переменную, стоящую слева

^=

Выполняет поразрядную операцию, исключающее ИЛИ над величи­нами, и записывает результат в переменную, стоящую слева

<<=

Сдвигает разряды левого операнда влево на число позиций, зада­ваемое правым операндом, и записывает результат в переменную, стоящую слева

>>=

Сдвигает разряды левого операнда вправо на число позиций, зада­ваемое правым операндом, и записывает результат в переменную, стоящую слева

Операции над указателями

Операция

Описание

Пример

&

Операция получения адреса— выдает адрес переменной, имя которой стоит за – обозначением операции

//присваиваем значение переменной nVariable = 77;

// в ptr - адрес переменной

ptr = &nVariable;

*

Косвенная адресация — вы дает значение , хранящееся по адресу, на который ссылается указатель

/* переменной nVaiue присваиваем значение переменной nVariable, используя косвенную адресацию */

nVaiue = *ptr;

Операции над структурами и объединениями

Операция

Описание

Пример

(точка)

Операция Принадлежности, используемая совместно с именем структуры (объединения) для задания компонента этой структуры

/* name — имя структуры, a member - элемент, указанный в шаблоне. Тогда этот элемент структуры определяется следующим образом */ name. member (объединения)

->

Косвенная адресация (определение принадлежности) элемента используется совместно с указателем на структуру (объединение) для идентификации некоторого компонента этой структуры (объединения)

/* ptrName - указатель на структуру, a member - элемент, указанный в шаблоне.

Тогда этот элемент структуры определяется следующим образом */ ptrName->member

Дополнительные операции

Операция

Описание

Пример

Sizeof

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

sizeof (double)

/* если structName - имя структуры, то следующий оператор возвратит ее размер */

sizeof structName

(type)

Операция приведения типа преобразует следующее за ней значение в тип, определенный ключевым словом (или словами), заключенным в круглые скобки

/* следующая операция преобразует целое число 7 в число с плавающей точкой 7.0 */

(float)7

?:

Операция условия имеет три операнда, каждый из которых является выражением, расположенным следующим образом:

выражение 1 ? выражение2: выражение З

Результат равен значению выражение 2, если выражение 1 истинно и значению выражение З, в противном случае.

/* Результат операции равен большему из двух чисел а и б */

(а >b) ? а: b

, (запятая)

Операция "запятая" связывает два выражения в одно и гарантирует, что левое выражение будет вычислено первым

/* Наиболее часто используется в цикле for * /

for(i=0, nStep=2; niter < 10; i+=nStep);

{

// тело цикла

}

Приоритет выполнения операции

Операции (от высшего приоритета к низшему)

Порядок выполнения

( ) { } - > . (точка)

слева направо

! ~ ++ -- - (тип) * & sizeof (все унарные)

справа налево

* / %

слева направо

+ -

---- “-----

<>

---- “-----

< >=

---- “-----

== !=

---- “-----

&

---- “-----

^

---- “-----

|

---- “-----

&&

---- “-----

||

---- “-----

?:

---- “-----

= += -= *= /= %=

справа налево

, (запятая)

Слева направо

Предопределенные макросы

Макрос

Комментарий

_date_

Дата компиляции текущего исходного файла, представленная в виде строковой константы в формате Mmm dd yyyy (месяц день год)

_file_

Строковая константа, являющаяся именем текущего исходного файла

_line_

Десятичная целая константа, представляющая текущий номер строки исходного текста

_stdc_

Равенство 1 показывает полную совместимость со стандартом ANSI С; в противном случае не определен

_TIME_

Строковая константа, представляющая время начала обработки текущего исходного файла в формате hh:mm:ss (часы:минуты:секунды)

_timestamp_

Строковая константа, представляющая дату и время последней. Модификации текущего исходного файла в формате Ddd Mmm Date hh:mm:ss yyyy (аббревиатура дня недели месяц число часы: минуты: секунды год)

Венгерская нотация

Префикс

Имя

a

Array (Массив)

с

Character (Символ)

d

Date (Данные)

dbl

Double (Двойной)

dc

Device Context (Контекст устройства)

dw

Double Word (Двойное слово)

f

Flag, Boolean or Logical (Флаг, Булевское или Логическое)

h

Handle (Дескриптор)

i

Integer (Целое)

inst

Instance (Экземпляр, Копия)

I

Long (Длинное)

li

Long Integer (Длинное целое)

Ip

Long Pointer (Дальний указатель)

msg

Message (Сообщение)

n

Numeric (Цифровое)

о

Object (Объект)

pal

Palette (Палитра)

psz

Pointer to a Zero Terminated String (Указатель на строку с завершаю­щим нулем)

ptr

Pointer (Указатель (или Р, когда использован с другими переменными, подобными psz))

r

Real (Действительное, Вещественное)

гс

Rectangle (Прямоугольник)

rgb

Red, Green, Blue (Переменная цвета)

rsrc

Resource (Ресурс)

sgl

Single (Единственное)

si

Short Integer (Короткое целое)

sz

Zero Terminated String (Строка с завершающим нулем)

u

Unsigned (Без знаковое)

ui

Unsigned Integer or Byte (Без знаковое целое или Байт)

w

Word (Слово)

wnd

Window (Окно)

Директивы препроцессора

Директива

Комментарий

define идентификатор

#define идентификатор текст

#define идентификатор (список, параметров) текст

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

#undef идентификатор

Отменяет текущее определение идентификатора

#defined идентификатор

#defined (идентификатор)

Эта операция дает истинное (не равное 0) значение, если заданный идентификатор в данный момент определен

#include

#include "путь"

Включает содержимое файла, заданного именем путь, в текущий компилируемый ис­ходный файл. Путь представляет собой имя файла, которому может предшествовать спецификация каталога. Если спецификация пути заключена в двойные кавычки, то пре­процессор ищет файл в текущем (рабочем) каталоге, а в случае его отсутствия поиск переносится в стандартные каталоги поиска, которые задаются командой PATH операци­онной системы и установками интегрирован­ной среды Visual C++. Если же спецификация пути заключена в угловые скобки, то поиск осуществляется в стандартных каталогах

#if Константное_выражение

Условная подстановка фрагмента текста в зависимости от значения константного выра­жения: фрагмент подставляется, если оно истинно. Конец условно подставляемого фрагмента обязательно должен быть отмечен директивой #endif

#endif

Обозначает конец условно подставляемого фрагмента текста, начатого директивой #if

#ifdef идентификатор

#ifndef идентификатор

Условная подстановка фрагмента текста в зависимости от того, определен ли иденти­фикатор

#else

Позволяет организовать альтернативную ветвь условной подстановки определенной директивой #if. Между директивами #if и ttendif разрешается использовать только одну директиву #else

#elif константное_выражение

Сокращение от "else if". Используется как альтернативный вариант при построении вло­женных директив #if

#line целая_константа

"имя_файла" (необязательное)

Используется при генерации сообщений периода компиляции и сообщает компилятору об изменении порядка нумерации строк и необязательном изменении имени файла

#error текст

Служит для прерывания компиляции, поиска ошибок и выдачи сообщения вида:Fatal: имя_файла номер_строки Error directive:Текст

#pragma последовательность символов

Определяет зависящие от реализации указания компилятору (прагмы). Компилятор Visual C++ поддерживает следующие прагмы:

alloc text, comment, optimize, auto_inline, component, inline_depth, pack, bss seg, data_seg, function, intrinsic, setlocale, code_seg, hdrstop, message, const seg, once, warning, inline recursion, check_stack, include_alias

Например,директива

#pragma warning(disable: 4305)

предписывает компилятору не выдавать пре­дупреждения при несовпадении типов данных

Операции препроцессора

Операция

Комментарий

# - операция подстановки строки

Используется перед параметром макроса, и предписывает вместо значения этого пара­метра подставлять его имя

## - операция конкантенации

Объединяет лексемы и, удаляя все пробелы, образует новое имя. Одно из применений этой операции заключается в динамическом создании имен переменных и макроопреде­лений. В макроопределении эта операция обрабатывается после подстановки парамет­ров макроса

#@— операция подстановки символа

Рассматривает фактический параметр как отдельный символ, заключенный в одиночные кавычки

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Нашёл ошибку?
Или хочешь предложить что-то улучшить на этой странице? Напиши об этом и получи бонус!
Бонус рассчитывается индивидуально в каждом случае и может быть в виде баллов или бесплатной услуги от студизбы.
Предложить исправление
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5120
Авторов
на СтудИзбе
444
Средний доход
с одного платного файла
Обучение Подробнее