Latest web development tutorials
×

C курс

C Язык учебника C Краткое введение C параметры окружающей среды C Структура программы C Базовый синтаксис C Типы данных C переменная C постоянная C Storage Class C операторы C судья C циркуляция C функция C Обзорное правила C массив C указатель C строка C структура C союз C поле Bit C typedef C Входной и Выходной C грамотность документов C препроцессор C заголовок C Слепки C Обработка ошибок C Рекурсия C Переменный параметр C Управление памятью C Параметры командной строки C Классические 100 случаев

C Стандартная библиотека

C Стандартная библиотека - справочное руководство C Стандартная библиотека - <assert.h> C Стандартная библиотека - <ctype.h> C Стандартная библиотека - <errno.h> C Стандартная библиотека - <float.h> C Стандартная библиотека - <limits.h> C Стандартная библиотека - <locale.h> C Стандартная библиотека - <math.h> C Стандартная библиотека - <setjmp.h> C Стандартная библиотека - <signal.h> C Стандартная библиотека - <stdarg.h> C Стандартная библиотека - <stddef.h> C Стандартная библиотека - <stdio.h> C Стандартная библиотека - <stdlib.h> C Стандартная библиотека - <string.h> C Стандартная библиотека - <time.h>

C указатель на указатель

C Указатель C Указатель

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

С представляет собой указатель на указатель

Указатель на переменную-указатель должен быть объявлен следующим образом, а именно размещение две звездочки перед именем переменной. Например, следующий объявляет указатель на INT стрелочных указателей:

int **var;

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

#include <stdio.h>
 
int main ()
{
   int  var;
   int  *ptr;
   int  **pptr;

   var = 3000;

   /* 获取 var 的地址 */
   ptr = &var;

   /* 使用运算符 & 获取 ptr 的地址 */
   pptr = &ptr;

   /* 使用 pptr 获取值 */
   printf("Value of var = %d\n", var );
   printf("Value available at *ptr = %d\n", *ptr );
   printf("Value available at **pptr = %d\n", **pptr);

   return 0;
}

Когда приведенный выше код компилируется и выполняется, он дает следующие результаты:

Value of var = 3000
Value available at *ptr = 3000
Value available at **pptr = 3000

C Указатель C Указатель