Menu
Coddy logo textTech

Объявление указателей

Часть раздела Logic & Flow путешествия по C на Coddy — урок 2 из 63.

Теперь, когда вы понимаете, что такое указатели, давайте узнаем, как их создавать. Объявление переменной-указателя следует определенному синтаксису, который сообщает компилятору, на какой тип данных будет указывать этот указатель.

Базовый синтаксис для объявления указателя: data_type *pointer_name;

int *ptr;        // Объявляет указатель на целое число
char *ch_ptr;    // Объявляет указатель на символ
float *f_ptr;    // Объявляет указатель на число с плавающей точкой

Звездочка (*) — это то, что делает это объявлением указателя. Она сообщает компилятору, что эта переменная будет хранить адрес памяти, а не само значение данных. Когда вы объявляете int *ptr;, вы говорите: «ptr — это указатель, который может хранить адрес целочисленной переменной».

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

challenge icon

Задание

Легко

Напишите программу на языке C, которая демонстрирует правильный синтаксис объявления указателей. Ваша программа должна:

  1. Объявить указатель на целое число с именем int_ptr
  2. Объявить указатель на символ с именем char_ptr
  3. Объявить указатель на число с плавающей точкой с именем float_ptr
  4. Вывести адреса памяти, хранящиеся в каждом указателе, используя printf со спецификатором формата %p

Ваш вывод должен отображать три адреса указателей в следующем формате:

Integer pointer: [address]
Character pointer: [address]  
Float pointer: [address]

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

Шпаргалка

Чтобы объявить переменную-указатель, используйте синтаксис: data_type *pointer_name;

int *ptr;        // Объявляет указатель на целое число
char *ch_ptr;    // Объявляет указатель на символ
float *f_ptr;    // Объявляет указатель на число с плавающей точкой

Звездочка (*) делает это объявлением указателя, сообщая компилятору, что эта переменная будет хранить адрес памяти. Тип данных перед звездочкой указывает, на какой тип данных будет указывать указатель.

Используйте спецификатор формата %p с функцией printf для отображения адресов указателей.

Попробуйте сами

#include <stdio.h>

int main() {
    // TODO: Объявите ваши указатели здесь
    
    
    // TODO: Выведите адреса указателей, используя требуемый формат
    
    
    return 0;
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Logic & Flow