码迷,mamicode.com
首页 > 编程语言 > 详细

C语言指针

时间:2017-05-24 10:14:47      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:函数参数   程序   大于   指针的指针   强制   定义   强制转换   har   类型   

1、指向指针的指针,二级指针  
int a = 1;
*aa = &a;
**aaa  = &aa
aaa的值:**aaa
aaa的地址:*aaa
 
2、
void (*b[10]) (void (*)());
b是一个数组,这个数组有10个元素,每一个元素都是一个指针,指针指向一个函数,函数参数是“void (*)()”【注1】,返回值是“void”!
注1:这个参数又是一个指针,指向一个函数,函数参数为空,返回值是“void”。
 
int* (*a[5])(int, char*);
首先看到标识符名a,“[]”优先级大于“*”,a与“[5]”先结合。所以a是一个数组,这个数组有5个元素,每一个元素都是一个指针,
指针指向“(int, char*)”,对,指向一个函数,函数参数是“int, char*”,返回值是“int*”。
 
强制转换成函数指针,这个函数返回值是void , 参数是void * ,好比void (*fun)( void *)
 
void中文翻译为“无类型”。常用在程序编写中对定义函数的参数类型、返回值、函数中指针类型进行声明。
void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。
 
(void (*)(void *))
强制转换成函数指针,这个函数返回值是void , 参数是void * ,好比void (*fun)( void *)

C语言指针

标签:函数参数   程序   大于   指针的指针   强制   定义   强制转换   har   类型   

原文地址:http://www.cnblogs.com/dong-blog/p/6897050.html

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