码迷,mamicode.com
首页 > 其他好文 > 详细

一些知识

时间:2020-07-30 22:18:36      阅读:85      评论:0      收藏:0      [点我收藏+]

标签:元素   自动   一维数组   log   问题   动态分配内存   内存地址   必须   操作   

指针: https://www.cnblogs.com/tongye/p/9650573.html

int *p;        // 声明一个 int 类型的指针 p
char *p        // 声明一个 char 类型的指针 p
int *arr[10]   // 声明一个指针数组,该数组有10个元素,其中每个元素都是一个指向 int 类型对象的指针
int (*arr)[10] // 声明一个数组指针,该指针指向一个 int 类型的一维数组
int **p;       // 声明一个指针 p ,该指针指向一个 int 类型的指针

声明一个指针变量并不会自动分配任何内存。在对指针进行间接访问之前,指针必须进行初始化:或是使他指向现有的内存,或者给他动态分配内存,否则我们并不知道指针指向哪儿,这将是一个很严重的问题,稍后会讨论这个问题。初始化操作如下:
/* 方法1:使指针指向现有的内存 */
int x = 1;
int *p = &x;  // 指针 p 被初始化,指向变量 x ,其中取地址符 & 用于产生操作数内存地址

/* 方法2:动态分配内存给指针 */
int *p;
p = (int *)malloc(sizeof(int) * 10);    // malloc 函数用于动态分配内存
free(p);    // free 函数用于释放一块已经分配的内存,常与 malloc 函数一起使用,要使用这两个函数需要头文件 stdlib.h
*(p++) 先取值在p++   等价于先 *p 然后p++
*(++p) 先p++在取值




一些知识

标签:元素   自动   一维数组   log   问题   动态分配内存   内存地址   必须   操作   

原文地址:https://www.cnblogs.com/BananaMan/p/13406051.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!