55 lines
1.9 KiB
C
55 lines
1.9 KiB
C
// cyrillic_ptr.c - Проверка указателей и указателей на указатели с кириллическими идентификаторами
|
||
цел главн() {
|
||
// Обычный указатель
|
||
цел значение = 42;
|
||
цел *указатель = &значение;
|
||
|
||
если (*указатель != 42) {
|
||
возврат 1;
|
||
}
|
||
|
||
// Указатель на указатель
|
||
цел **указатель_на_указатель = &указатель;
|
||
|
||
если (**указатель_на_указатель != 42) {
|
||
возврат 1;
|
||
}
|
||
|
||
// Изменение через указатель
|
||
*указатель = 100;
|
||
если (значение != 100) {
|
||
возврат 1;
|
||
}
|
||
|
||
// Изменение через указатель на указатель
|
||
**указатель_на_указатель = 200;
|
||
если (значение != 200) {
|
||
возврат 1;
|
||
}
|
||
|
||
// Указатель на структуру
|
||
структ Данные {
|
||
цел поле;
|
||
};
|
||
|
||
структ Данные объект;
|
||
объект.поле = 123;
|
||
|
||
структ Данные *указатель_на_структуру = &объект;
|
||
если (указатель_на_структуру->поле != 123) {
|
||
возврат 1;
|
||
}
|
||
|
||
указатель_на_структуру->поле = 456;
|
||
если (объект.поле != 456) {
|
||
возврат 1;
|
||
}
|
||
|
||
// Указатель на указатель на структуру
|
||
структ Данные **указатель_на_указатель_на_структуру = &указатель_на_структуру;
|
||
если ((*указатель_на_указатель_на_структуру)->поле != 456) {
|
||
возврат 1;
|
||
}
|
||
|
||
возврат 0;
|
||
} |