Skip to content

Instantly share code, notes, and snippets.

@itczl22
Last active October 30, 2016 08:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save itczl22/cafb2e1ba0b7b15a6e93a68f63f0c2ad to your computer and use it in GitHub Desktop.
Save itczl22/cafb2e1ba0b7b15a6e93a68f63f0c2ad to your computer and use it in GitHub Desktop.
指针与数组
/*
* 指针的标准定义方法:
* type *ptr;
* int val; int *ptr = &val;
* int* val; int* *ptr = &val;
* 所以不论几级指针都一样, 指针就是*ptr, 一级指针type是int, 二级指针type是int*, 以此类推.
*
* 同理指向数组的指针:
* type *ptr;
* int arr[10]; int *ptr = arr;
* int* arr[10]; int* *ptr = arr;
* 指向数组的指针就是*ptr, 前面加数组的数据类型, 存放int就是int *ptr, 存放int*就是int* *ptr.
*/
#include <stdio.h>
int main(void) {
// 一级指针
int val = 10;
int *ptr = &val;
// 二级指针
int* pval = (int*)0x12345678;
int* *pptr = &pval;
// 指向普通数组的指针
int arr[10];
int *ptra = arr;
// 指向指针数组的指针
int* parr[10];
int* *pptra = parr;
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment