- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
虚拟环境下C语言程序教学实践
虚拟环境下C语言程序教学实践
摘要:由于ANSI C中对C语言的有些内容没有做具体的规定,不同的编译环境会对此做出不同的处理,为了使学生能够更好的理解C语言中的平台相关性以及部分语法的特殊性,以避免在实际的开发过程中出现意想不到的问题,以及为了能够更好地写出跨平台的C语言源程序,笔者试图在虚拟环境下搭建不同的操作系统,以及在不同的操作系统上搭建C语言的不同编译环境,进行C语言平台相关性的教学实践。
关键词: C语言; 程序设计; 循环结构;渐进启发式;教学方法
中图分类号:TP3 文献标识码:A 文章编号:1009-3044(2013)05-1084-02
1 概述
目前用于C语言的编译系统主要有Borland公司开发的Turbo C2.0、Turbo C++3.0和微软公司的Visual C++ 6.0, 以及linux和Unix下的GCC编译器。Tubro C2.0 是基于Dos平台下的16位的C语言编译系统,它是一个集程序编辑、编译、链接和调试为一体的C语言程序开发环境。在C语言的早期,由于其使用方便,被大部分的用户所接受。而随着图形用户界面操作系统Windows的兴起,DOS操作系统逐步退出了历史的舞台。目前的C语言的主流集成开发环境是微软公司的Visual C++ 6.0。 虽然编译环境只是一种工具,教学过程中我们注重的是C语言中的标准的独立于环境的内容,但是,由于对于有些知识点的讨论不能完全脱离编译环境,因此如何理解以及体会C语言中某些知识点的平台相关性,为后续的实际开发过程中能够避免出现一些意想不到的问题,以及开发出具有跨平台的C语言程序。该文笔者试图通过对虚拟环境下的C语言程序设计进行教学实践,一方面让学生能够熟悉和熟练操作目前的主流虚拟操作系统,另一方面对C语言的平台相关性具有深刻的认识。
由于编译环境所基于的操作系统由16 位变成32 位, 所以 整型和指针类型的数据所占存储空间也发生了变化。在ANSI C 中并未具体规定各种整型数据所占内存的字节数,基本原则是(141 页):短整型所占存储单元的位数不得多于
基本整型,而长整型所占存储单元的位数不得少于基本整型。在两种环境下,短整型和长整型所占字节数均为2 和4,但是对于基本整型则不同:TC 规定基本整型占2 个字???, 而VC 中占4个字节,这一改变使基本整型数据的范围增大:无符号基本整型由0 到65535 扩大为0 到4294967295,有符号基本整型-32768到32767 扩大为-2147483648 到2147483647。在TC 环境下,由于有符号基本整型数据最大值为32767, 所以在使用过程中经常要注意溢出的情况,例如,表达式30000+30000 的值为-5536, 而不是60000; 而在VC 环境下, 基本整型最大值变成2147483647。这一数值相对来说已经足够大了,所以基本不用考虑溢出的情况,上面的表达式也可以得到正常的值60000。再如下面的程序:
#include
void main()
{int i= -1;
printf(%u\n,i);
}
在TC 下, 输出结果为65535; 而VC 下, 输出结果则为4294967295。指针类型的数据和基本整型类似, 所占存储空间也由2 个字节变成4 个字符。
2 实践内容与实施方案
实践的主要内容是:是利用虚拟的操作系统平台上构建多种类型的操作系统,并在多种操作系统上搭建不同的C语言程序的执行环境。能够方便的在同一台机器上对不同的C语言编译环境切换。让学生在熟悉不同的C编译环境的基础上尽量编写出能够跨平台的C程序,使编写的程序能够在实际的应用中跨平台运行,尽可能减少在不同的环境下执行C程序时的代码修改。通过在实践中不断发现问题和解决问题的过程中深入了解C编译器的区别,以便在以后的实际开发过程中能够尽快地编写出能够跨平台的程序。具体的实施方案如下:
1) 构建虚拟的操作系统平台,熟悉虚拟操作系统中的两种虚拟技术:全虚拟化和半虚拟化。以及这两种虚拟技术在实际应用程序开发过程中的区别。具体的实施方案是分别在已有的操作系统上安装利用半虚拟化技术实现的VMWare操作系统,和利用全虚拟化技术实现的具有开源代码的Xen操作系统。并能够在两种虚拟操作系统之上构建出至少有Windows和Linux的平台。并在此两种平台上分别搭建C语言的开发环境。
2) 精心选取可能在不同的编译器上的写法不一样的例子,在不同的C语言编译环境下编写、调试和运行程序以完成题目的要求。
3) 在完成上述精确例子的任务的过程中不断的发现问题,解决问题,并且详细撰写实验报告。
4) 对撰写的所有的实验
您可能关注的文档
最近下载
- 2025年江苏省公务员省考《行测》联考-部分真题(A类).pdf VIP
- 校园消防安全台账范本.docx
- 2024版加油站安全生产管理台账样本.doc VIP
- 精品解析:江苏省南京市玄武外国语学校、科利华中学2022-2023学年八年级下学期期中语文试题(解析版).docx VIP
- PC工法桩专项施工方案 .doc
- foreign language classroom anxiety.pdf VIP
- JT_T 410-2022CN交通运输行政执法标识.pdf
- 标准图集-22TJ310装配式钢筋桁架楼承板系列产品-下册.pdf VIP
- 汽车基础知识在线试题答案2.pdf VIP
- 地质勘查坑探规范.pdf VIP
文档评论(0)