Главная arrow Программирование arrow PC arrow Использование описателя const в C Sunday, April 23 2017  
ГлавнаяКонтактыАдминистрированиеПрограммированиеСсылки
UK-flag-ico.png English Version
GERMAN-flag-ico.png Die deutsche Version
map.gif карта сайта
нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

Поделиться:

Использование описателя const в C Версия для печати
Написал microsin   
23.06.2007

Ключевое слово const обозначает, что та или иная величина не изменяется. Здесь приводятся подробные правила употребления описателя const.

1. Если в начале описания переменной стоит описатель const, то описываемый объект во время выполнения программы не изменяется:
const double pi = 3.1415;
const Complex one(1,1);

2. Если const стоит перед определением указателя или ссылки, то это означает, что не изменяется объект, на который данный указатель или ссылка указывает:
const char* ptr = &string; //указатель на неизменяемую строку
char x = *ptr;             // обращение по указателю — допустимо
ptr++;                     // изменение указателя — допустимо
*ptr = '0';  // попытка изменения объекта, на который указатель указывает – ошибка

3. Если нужно объявить указатель, значение которого не изменяется, то такое объявление выглядит следующим образом:
char* const ptr = &string; //неизменяемый указатель
char x = *ptr;             // обращение по указателю – допустимо
ptr++;                     // изменение указателя – ошибка
*ptr = '0';    // изменение объекта, на который указатель указывает – допустимо

 

Комментарии  

  1. #1 LKote
    2010-08-3113:41:36 typedef char* mystr;
    const mystr str;

    как раскрыть const mystr str;

    a) const char* str;
    b) char* const str;
    //Липман и комплятор утверждают b вариант.Почему не сильно
    понятно. Из подстановки следует вариант а.

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

:D:lol::-);-)8):-|:-*:oops::sad::cry::o:-?:-x:eek::zzz:P:roll::sigh:

Защитный код
Обновить

< Пред.   След. >

Top of Page
 
microsin © 2017