c语言:typedef + struct + 指针
(2011-12-26 16:07:38)
					
											标签:
																				
                            杂谈 | 
					分类: c语言经验总结理解 | 
c语言规范,定义结构体:
typedef  struct ANSWER_HEADER   
{
u8u8Type; u8u8Code; u32u32TimeStamp; structANSWER_HEADER *pNext; 
}ANSWER_HEADER_T, *PANSWER_HEADER_T;
ANSWER_HEADER_T为struct 
ANSWER_HEADER的别名 
PANSWER_HEADER_T为struct 
ANSWER_HEADER*的别名 
上面的定义方式等价于
struct ANSWER_HEADER 
{
u8u8Type; u8u8Code; u32u32TimeStamp; structANSWER_HEADER *pNext; 
};
typedef  struct ANSWER_HEADER 
ANSWER_HEADER_T; 
typedef  struct ANSWER_HEADER 
*PANSWER_HEADER_T; 
********************************************************************
结构的定义:
定义一个结构的一般形式为:
struct 结构名
   
{成员表列};
成员列表的形式为:   
struct 结构名
成员列表的形式为:
例如 :
struct stu
{
};
声明结构变量的三种方法:
1.先定义结构类型,再声明:
       
struct stu 
       
{ 
         int
num; 
         char
name[20]; 
        
char sex; 
        
float score; 
       
};
       
struct stu boy1, boy2; 
       
也可以用宏定义使一个符号常量来表示
       
一个结构类型。 
       
例如: 
       
#define STU struct stu 
       
STU 
       
{ 
        
int num; 
        
char name[20]; 
         char
sex; 
        
float score; 
       
}; 
       
STU boy1, boy2;                                                                                                                                                       
1.先定义结构类型,再声明:
2.  在定义结构类型的同时说明结构变量
       
例如: 
       
struct stu 
         { 
            
int num; 
            
char name[20]; 
            
char sex; 
            
float score; 
       
}boy1, boy2; 
       
这种形式的说明的一般形式为: 
       
struct 结构名 
       
{ 
         成员表列 
       
}变量名表列;                                                                                                                    
****************************************************************************************
下面是谭浩强老师c语言书中typedef一节:
类型定义符typedef 
C语言不仅提供了丰富的数据类型,而且还允许由用户自己定义类型说明符,也就是说
允许由用户为数据类型取“别名”。类型定义符 typedef 即可用来完成此功能。例如,有整  
型量 a,b,其说明如下:  
其中 int 是整型变量的类型说明符。int 的完整写法为 integer,为了增加程序的可读性,    
可把整型说明符用 typedef 定义为:   
typedef int INTEGER   
这以后就可用 INTEGER 来代替 int 作整型变量的类型说明了。       
例如: 
它等效于: 
用 typedef 定义数组、指针、结构等类型将带来很大的方便,不仅使程序书写简单而且  
使意义更为明确,因而增强了可读性。 
例如: 
用 NAME 说明变量,如:   
完全等效于: 
又如: 
typedef struct stu   
{ 
} STU;  
定义 STU 表示 stu 的结构类型,然后可用 STU 来说明结构变量:       
STU body1,body2;  
typedef 定义的一般形式为:  
typedef 原类型名  新类型名      
其中原类型名中含有定义部分,新类型名一般用大写表示,以便于区别。 
有时也可用宏定义来代替 typedef 的功能,但是宏定义是由预处理完成的,而 typedef   
则是在编译时完成的,后者更为灵活方便。
							
		前一篇:AF_INET
										后一篇:c专家编程——笔记(一)
					
加载中…