新博客地址(shankusu.me)
以前看过一本《C语言参考手册》,其中讲解了命名空间,这几天在学习C的基础语法,故而总结下。
C命名空间分为独立(各个空间即使出现重名也不会影响)的下面个空间。
第一类基础类型空间eg: 整形(char short int long) 浮点(float double ),指针(void*),
第二类:聚合 enum struct union
实际上这和C对数据分类差不多,更为详细的分类见下
nameSpace1:
char n1, short n1, int n1, long n1, float n1, double n1, void *n1, 这些均使用同一个命名空间,故而任意两个或以上出现,则为命名重复,C中枚举常量被视为整型,故而如果出现enum e1{n1=10,}也是非法的。
nameSpace2:
enum n2, struct n2, union2,这些泛类型共同使用同一个命名空间,故而出现任意两个或以上均为命名重复。
nameSpaceN:
struct s1 { int n3;}; struct s2{int n3;}; union s3{int n3;};这样的,每个结构体和联合内部的命名空间仅针对对应的结构体和联合有效。
C语言命名空间解析
本文详细介绍了C语言中的命名空间概念,包括基础类型空间、聚合类型空间等,并通过实例展示了不同命名空间之间的区别及如何避免命名冲突。
2896

被折叠的 条评论
为什么被折叠?



