typedef #define 的不同
本帖最后由 catch 于 2014-1-22 16:34 编辑typedef char *pStr1;
#define pStr2 char *;
pStr1 s1, s2;
pStr2 s3, s4;
在上述的变量定义中,s1、s2、s3都被定义为char *,而s4则定义成了char这是为什么?
第一句是 把 pStr1 定义为 char* 这个变量格式
第二句是 把 pStr2 替换为 char*
所以就很容易理解了
一个是类型定义
一个只是单纯替换
第二句= char *s3,s4;
所以 s4是char
其实我一直认为这两个东西是差不多的,,哈哈 我是学单片机开发的 我表示 用#define 用得更多,但是通常
我也会写
typdef struct A{
int a;
}Atyp;
Atyp Aa;
大部分都是这么用的 楼主正解,一个是类型定义,一个是简单替换 路漫漫其修远兮,学习下 路漫漫其修远兮,学习下 路过看看 = =
页:
[1]