摘要: 在实际问题中,一组数据往往具有不同的数据类型。例如, 在学生登记表中,姓名应为字符型;学号可为整型或字符型; 年龄应为整型;性别应为字符型;成绩可为整型或实型。 显然不能用一个数组来存放这一组数据。 因为数组中各元素的类型和长度都必须一致,以便于编译系统处理。为了解决这个问题,c语言中给出了另一种构造数据类型——“结构”。 它相当于其它高级语言中的记录。 “结构”是一种构造类型,它是由若干“成员”组成的。 每一个成员可以是一个基本数据类型或者又是一个......
摘要: 指针是c语言中广泛使用的一种数据类型。 运用指针编程是c语言最主要的风格之一。利用指针变量可以表示各种数据结构; 能很方便地使用数组和字符串; 并能象汇编语言一样处理内存地址,从而编出精练而高效的程序。指针极大地丰富了c语言的功能。 学习指针是学习c语言中最重要的一环, 能否正确理解和使用指针是我们是否掌握c语言的一个标志。同时, 指针也是c语言中最为困难的一部分,在学习中除了要正确理解基本概念,还必须要多编程,上机调试。只要作到这些,指针也是不难掌握......
水滴石穿C语言之extern声明辨析 1 基本解释 【相关文章:
手机上网被卡住了脖子?】 【扩展阅读:
上网小心病毒 平均每天30个病毒现身】 extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量与函数时在其他模块中寻找其定义。 【扩展信息:
调查:手机上网被卡住了脖子?】 另外,extern也可用来进行链接指定。 2 问题:extern 变量 在一个源文件里定义了一个数组: 在另外一个文件里用下列语句进行了声明: 请问,这样可以吗? 答案与分析: 1)、不可以,程序运行时会告诉你非法访问。原因在于,指向类型t的指针并不等价于类型t的数组。extern char *a声明的是一个指针变量而不是字符数组,因此与实际的定义不同,从而造成运行时非法访问。应该将声明改为extern char a[ ]。 2)、例子分析如下,如果a[] = "abcd",则外部变量a=0x61626364 (abcd的ascii码值),*a显然没有意义,如下图: 显然a指向的空间(0x61626364)没有意义,易出现非法内存访问。 3)、这提示我们,在使用extern时候要严格对应声明时的格式,在实际编程中,这样的错误屡见不鲜。 4)、extern用在变量声明中常常有这样一个作用,你在*.c文件中声明了一个全局的变量,这个全局的变量如果要被引用,就放在*.h中并用extern来声明。 3 问题:extern 函数1 常常见extern放在函数的前面成为函数声明的一部分,那么,c语言的关键字extern在函数的声明中起什么作用? 答案与分析: ...
下一页 摘要: 数组在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。在c语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。 本章介绍数值数组和字符数组,其余的在以后各章陆续介绍。数组类型说明 在c语言中使用数组必须先进行类型说明。 数组说明的一般形式为:......