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