typedef 是为复杂的声明 定义一个简单的别名

1. const int a 
2. int const a
3. const int *a
4. int * const a
5. const int * const a

解析:
1和2是一样的,a是一个长整型数。const放置的位置没有硬性规定,一般情况下放在最左边。

3表示a是一个指针,指向常整型。

4表示a是一个常指针,指向整型。

5表示a是一个常指针,指向常整形。

int *i;    // *i 是声明符, int是声明说明符
int **i;   // **i是声明符, int是声明说明符
int &i;    // &i 是声明符, int是声明说明符
int (*pf)(int);    // pf是一个指针,指向函数,返回值是整型
int *f(int i);     // f是一个函数,返回一个指针,指向整型
typedef int (*PIFN)(char *);    // 返回int型的函数。

PIFN pifnDispatchArray[7];      // pifnDispatchArray是七个指针的数组,指向返回int型的函数。
//复杂的声明一个10个char类型数组:
char line[10];
char text[10];

//未复杂声明起别名
typedef char Line[10];
Line text, line;

typedef 是为复杂的声明 定义一个简单的别名

为指向函数的指针创建别名

typedef void (*PtrToFunc)();
PtrToFunc ptr;

为指向Block的指针创建别名

typedef void (^CallBackBlock)();

CallBackBlock callBack;
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 前言 把《C++ Primer》[https://book.douban.com/subject/25708312...
    尤汐Yogy阅读 9,754评论 1赞 51
  • 307、setValue:forKey和setObject:forKey的区别是什么? 答:1, setObjec...
    AlanGe阅读 1,766评论 0赞 1
  • 指针是C语言中广泛使用的一种数据类型。 运用指针编程是C语言最主要的风格之一。利用指针变量可以表示各种数据结构; ...
    朱森阅读 3,676评论 3赞 44
  • 姓名:李有连 企业名称:东莞耀升机电有限公司 组别:AT努力组 【日精进打卡第101天】 【知~学习】 诵读《六项...
    李有连阅读 268评论 0赞 0
  • 好多时候,节日的吃喝不只是为了满足口腹之欲。 更多的是生活的一种仪式感
    艾静子阅读 268评论 0赞 0

友情链接更多精彩内容