C/C++Ó﷨֪ʶ£ºtypedef struct Ó÷¨Ïê½â
µÚһƪ£ºtypedef structÓëstructµÄÇø±ð
1. »ù±¾½âÊÍ
typedefΪCÓïÑԵĹؼü×Ö£¬×÷ÓÃÊÇΪһÖÖÊý¾ÝÀàÐͶ¨ÒåÒ»¸öÐÂÃû×Ö¡£ÕâÀïµÄÊý¾ÝÀàÐͰüÀ¨ÄÚ²¿Êý¾ÝÀàÐÍ£¨int,charµÈ£©ºÍ×Ô¶¨ÒåµÄÊý¾ÝÀàÐÍ
£¨structµÈ£©¡£
ÔÚ±à³ÌÖÐʹÓÃtypedefÄ¿µÄÒ»°ãÓÐÁ½¸ö£¬Ò»¸öÊǸø±äÁ¿Ò»¸öÒ×¼ÇÇÒÒâÒåÃ÷È·µÄÐÂÃû×Ö£¬ÁíÒ»¸öÊǼò»¯Ò»Ð©±È½Ï¸´ÔÓµÄÀàÐÍÉùÃ÷¡£
ÖÁÓÚtypedefÓÐʲô΢ÃîÖ®´¦£¬ÇëÄã½Ó×Å¿´ÏÂÃæ¶Ô¼¸¸öÎÊÌâµÄ¾ßÌå²ûÊö¡£
2. typedef & ½á¹¹µÄÎÊÌâ
µ±ÓÃÏÂÃæµÄ´úÂ붨ÒåÒ»¸ö½á¹¹Ê±£¬±àÒëÆ÷±¨ÁËÒ»¸ö´íÎó£¬ÎªÊ²Ã´ÄØ£¿Äª·ÇCÓïÑÔ²»ÔÊÐíÔڽṹÖаüº¬Ö¸ÏòËü×Ô¼ºµÄÖ¸ÕëÂð£¿ÇëÄãÏȲÂÏëһϣ¬È»ºó¿´ÏÂÎÄ˵
Ã÷£º
typedef struct tagNode
{
¡¡char *pItem;
¡¡pNode pNext;
}
*pNode;
´ð°¸Óë·ÖÎö£º
1¡¢typedefµÄ×î¼òµ¥Ê¹ÓÃ
typedef long byte_4;
¸øÒÑÖªÊý¾ÝÀàÐÍlongÆð¸öÐÂÃû×Ö£¬½Ðbyte_4¡£
2¡¢ typedefÓë½á¹¹½áºÏʹÓÃ
typedef struct tagMyStruct
{
¡¡int iNum;
¡¡long lLength;
}
MyStruct;
ÕâÓï¾äʵ¼ÊÉÏÍê³ÉÁ½¸ö²Ù×÷£º
1) ¶¨ÒåÒ»¸öеĽṹÀàÐÍ
struct tagMyStruct
{
¡¡int iNum;
¡¡long lLength;
};
·ÖÎö£ºtagMyStruct³ÆÎª“tag”£¬¼´“±êÇ©”£¬Êµ¼ÊÉÏÊÇÒ»¸öÁÙʱÃû×Ö£¬struct
¹Ø¼ü×ÖºÍtagMyStructÒ»Æð£¬¹¹³ÉÁËÕâ¸ö½á¹¹ÀàÐÍ£¬²»ÂÛÊÇ·ñÓÐtypedef£¬Õâ¸ö½á¹¹¶¼´æÔÚ¡£
ÎÒÃÇ¿ÉÒÔÓÃstruct tagMyStruct varNameÀ´¶¨Òå±äÁ¿£¬µ«Òª×¢Ò⣬ʹÓÃtagMyStruct
varNameÀ´¶¨Òå±äÁ¿ÊDz»¶ÔµÄ£¬ÒòΪstruct ºÍtagMyStructºÏÔÚÒ»Æð²ÅÄܱíʾһ¸ö½á¹¹ÀàÐÍ¡£
2) typedefΪÕâ¸öеĽṹÆðÁËÒ»¸öÃû×Ö£¬½ÐMyStruct¡£
typedef struct tagMyStruct MyStruct;
Òò´Ë£¬MyStructʵ¼ÊÉÏÏ൱ÓÚstruct tagMyStruct£¬ÎÒÃÇ¿ÉÒÔʹÓÃMyStruct varNameÀ´¶¨Òå±äÁ¿¡£
´ð°¸Óë·ÖÎö
CÓïÑÔµ±È»ÔÊÐíÔڽṹÖаüº¬Ö¸ÏòËü×Ô¼ºµÄÖ¸Õ룬ÎÒÃÇ¿ÉÒÔÔÚ½¨Á¢Á´±íµÈÊý¾Ý½á¹¹µÄʵÏÖÉÏ¿´µ½ÎÞÊýÕâÑùµÄÀý×Ó£¬ÉÏÊö´úÂëµÄ¸ù±¾ÎÊÌâÔÚÓÚtypedefµÄ
Ó¦Óá£
¸ù¾ÝÎÒÃÇÉÏÃæµÄ²ûÊö¿ÉÒÔÖªµÀ£ºÐ½ṹ½¨Á¢µÄ¹ý³ÌÖÐÓöµ½ÁËpNextÓòµÄÉùÃ÷£¬ÀàÐÍÊÇpNode£¬ÒªÖªµÀpNode±íʾµÄÊÇÀàÐ͵ÄÐÂÃû×Ö£¬ÄÇôÔÚÀàÐÍ
±¾Éí»¹Ã»Óн¨Á¢Íê³ÉµÄʱºò£¬Õâ¸öÀàÐ͵ÄÐÂÃû×ÖÒ²»¹²»´æÔÚ£¬Ò²¾ÍÊÇ˵Õâ¸öʱºò±àÒëÆ÷¸ù±¾²»ÈÏʶpNode¡£
½â¾öÕâ¸öÎÊÌâµÄ·½·¨ÓжàÖÖ£º
1)¡¢
typedef struct tagNode
{
¡¡char *pItem;
¡¡struct tagNode
*pNext;
} *pNode;
2)¡¢
typedef struct tagNode *pNode;
struct tagNode
{
¡¡c
Ïà¹ØÎĵµ£º
1¡¢Ñ¡ÔñºÏÊʵÄËã·¨ºÍÊý¾Ý½á¹¹
Ñ¡ÔñÒ»ÖÖºÏÊʵÄÊý¾Ý½á¹¹ºÜÖØÒª£¬Èç¹ûÔÚÒ»¶ÑËæ»ú´æ·ÅµÄÊýÖÐʹÓÃÁË´óÁ¿µÄ²åÈëºÍɾ³ýÖ¸ÁÄÇʹÓÃÁ´±íÒª¿ìµÃ¶à¡£Êý×éÓëÖ¸ÕëÓï¾ä¾ßÓÐÊ®·ÖÃÜÇеĹØÏµ£¬Ò»°ãÀ´Ëµ£¬Ö¸Õë±È½ÏÁé»î¼ò½à£¬¶øÊý×éÔò±È½ÏÖ±¹Û£¬ÈÝÒ×Àí½â¡£¶ÔÓڴ󲿷ֵıàÒëÆ÷£¬Ê¹ÓÃÖ¸Õë±ÈʹÓÃÊý×éÉú³ÉµÄ´úÂë¸ü¶Ì£¬Ö´ÐÐЧÂʸü¸ß¡£
ÔÚÐí¶à ......
תÌû×Ôhttp://teren.itpub.net/post/15914/189516дµÄ·Ç³£ºÃ£¬Í¬Ê±¶Ô×÷Õß´òÆÆÉ°¹øÎʵ½µ×µÄ¾«Éñ³¹µ×ÕÛ·þ
¡¶³¹µ×¸ã¶¨CÖ¸Õë¡·µÚһƪ ±äÁ¿µÄÄÚ´æÊµÖÊ
ÒªÀí½âCÖ¸Õ룬ÎÒÈÏΪһ¶¨ÒªÀí½âCÖГ±äÁ¿”µÄ´æ´¢ÊµÖÊ£¬ËùÒÔÎҾʹӓ±äÁ¿”Õâ¸ö¶«Î÷¿ªÊ¼½²Æð°É£¡
ÏÈÀ´Àí½âÀí½âÄÚ´æ¿Õ¼ä°É£¡Çë¿´ÏÂͼ£º
ÄÚ´æµØ ......
//Á¬½ÓÍ·Îļþ
#include <io.h>
#include <dir.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//¿½±´ÎļþÄ£¿é
int copyfile (char *infile, char *outfile)
{
FILE *in,*out; //¶¨ÒåÎļþÖ¸Õë
in = fopen(infile,"r"); //´ ......
1¡¢±àдһ¸ö²¼¶ûº¯Êýint is_leap_year(int year)£¬ÅжϲÎÊýyearÊDz»ÊÇÈòÄê¡£Èç¹ûijÄê·ÝÄܱ»4Õû³ý£¬µ«²»Äܱ»100Õû³ý£¬ÄÇôÕâÒ»Äê¾ÍÊÇÈòÄ꣬´ËÍ⣬Äܱ»400Õû³ýµÄÄê·ÝÒ²ÊÇÈòÄê¡£
#include <stdio.h>
int is_leap_year(int);
int main(){
int i,j;
printf("please input a number:");
scanf("%d",& ......