define 与 typedef 的用法及区别
2016-03-04 13:47
232 查看
在C语言中 define 为替换, typedef 为类型起个别名,他们之间有一些区别一定要注意。
#include<stdio.h> #include<stdlib.h> /* 注意二者的区别 define 先写别名 再写要被替换的类型或变量,后面没有分号 typedef 先写类型再写别名,后面有分号 */ #define charp char * typedef char* charpp; void main() { charp x, y; printf("%d %d \n", sizeof(x), sizeof(y)); //输出: 4 1 /* 上面代码等价于: char *x; char y; 或:char *x,y; */ charpp a, b; /* 上面代码等价于: char *a; char *b; 或:char *a,*b; */ printf("%d %d \n", sizeof(a), sizeof(b)); //输出: 4 4 system("pause"); }
相关文章推荐
- 华为oj 超长正整数相加
- Java自动装箱与拆箱
- javaScript如何监听浏览器关闭事件(区别刷新事件)
- IIS 7.5站点配置
- NGUI 2DCamera和3DCamera共存的解决方案
- c#---释放空间
- sizeof的理解
- 中文分词的逆向最大匹配算法
- OC中String与Data之间的转换
- error while loading shared librarie
- uvaoj10562 Undraw the Trees(一直WA的快来看看)
- ant、maven解决rt.jar访问限制问题
- iOS 判断iphone ipad 系统版本
- Leetcode 78. Subsets
- Sql Server批量删除指定表
- iOS 数组排序
- GCD在子线程中更新UI出错记录
- ActiveMQ 点对点消息传送模型
- Gitlab上如何给指定人员在指定项目里设置指定权限,给项目设置保护
- Preference 使用小结