c語言 typedef
C programming Typedef Aptitude Questions and Answers: In this section you will find C Aptitude Questions and Answers on typedef topics, defining/changing name of any data type, using and accessing the typedef values.
C編程Typedef Aptitude問答:在本節中,您將找到有關typedef主題的C Aptitude問答,定義/更改任何數據類型的名稱,使用和訪問typedef值。
#include < stdio.h >
int main()
{
typedef int AAA,BBB,CCC,DDD;
AAA aaa=10;
BBB bbb=20;
CCC ccc=30;
DDD ddd=40;
printf("%d,%d,%d,%d",aaa,bbb,ccc,ddd);
return 0;
}
Error
10,10,10,10
10,20,30,40
AAA,BBB,CCC,DDD
10,20,30,40
錯誤
10,10,10,10
10,20,30,40
AAA,BBB,CCC,DDD
10,20,30,40
#include < stdio.h >
int main()
{
typedef auto int AI;
AI var=100;
printf("var=%d",var);
return 0;
}
var=100
var=AI
var=0
Error
Error : more than one storage classes/ many storage classes.
Since typedef is used to define the name of data type, here auto is a storage class, can not be type defined.
var = 100
var = AI
var = 0
錯誤
錯誤:多個存儲類別/多個存儲類別。
由于typedef用于定義數據類型的名稱,因此auto是一個存儲類,無法進行類型定義。
#include < stdio.h >
int main()
{
typedef char* string;
string myName="ABCDEFG";
printf("myName=%s (size=%d)",myName,sizeof(myName));
return 0;
}
myName=ABCDEFG (size=7)
Error
myName=ABCDEFG (size=4)
myName=ABCDEFG (size=8)
myName=ABCDEFG (size=4).
In this program char* has defined as string, statement string myName="ABCDEFG"; is char* myName="ABCDEFG" which is a character pointer, takes 4 bytes(on 32 bit compiler) in memory.
myName = ABCDEFG(大小= 7)
錯誤
myName = ABCDEFG(大小= 4)
myName = ABCDEFG(大小= 8)
myName = ABCDEFG(大小= 4)。
在該程序中,char *已定義為字符串,語句字符串myName =“ ABCDEFG”; 是char * myName =“ ABCDEFG” ,它是一個字符指針,在內存中占用4個字節(在32位編譯器上)。
#include < stdio.h >
int main()
{
typedef struct
{
int empid;
int bsal;
}EMP;
EMP E={10012,15100};
printf("%d,%d",E.empid,E.bsal);
return 0;
}
10012,15100
0,0
ERROR
10012,10012
10012,15100.
10012,15100
0,0
錯誤
10012,10012
10012,15100。
翻譯自: https://www.includehelp.com/c-programs/c-typedef-aptitude-questions-and-answers.aspx
c語言 typedef