08-第三章 C++语言基础6_第1页
08-第三章 C++语言基础6_第2页
08-第三章 C++语言基础6_第3页
08-第三章 C++语言基础6_第4页
08-第三章 C++语言基础6_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

——基于Qt(Windows)版医用仪器软件设计MedicalInstrumentSoftwareDesign2022第3章C++语言基础6-——BasedonQt(WindowsEdition)基于指针的秒值-时间值转换实验关于这节课Aboutthiscourse.“C++是一种静态类型的、编译式的、通用的、对大小写敏感的且不规则的编程语言,常用于系统开发、引擎开发等领域,支持类、封时装、继承、多态等特性。C++语言灵活,运算符的数据结构丰富,具有结构化控制语句,程程序执行效率高,还具有高级语言与汇编语言的优点。本章将通过7个实验介绍C++语言的基基础知识。One

目录实验内容实验原理实验步骤本节任务实验内容通过键盘输入一个0~86399之间的值,包括0和86399,将其转换为小时值、分钟值和秒值,并且将小时值、分钟值和秒值分别存放在指针p的(p+2)地址、(p+1)地址和(p+0)地址,最后输出转换结果。实验原理

指针是一个变量,它的值为另一个变量的地址,即内存位置的直接地址。在使用指针存储其他变量的地址前,首先要对指针进行声明,如下所示:1.什么是指针?所有指针的值不管实际数据类型是整型、浮点型、字符型,或其他的数据类型,都是一个代表内存地址的十六进制数。不同数据类型的指针之间惟一不同的是指针所指向的变量或常量的数据类型不同。2.NULL指针

NULL指针是一个定义在标准库中的值为0的常量,赋为NULL值的指针被称为空指针。在大多数的操作系统上,程序不允许访问地址为0的内存,因为该内存是操作系统保留的。内存地址0有特别重要的意义,它表明该指针不指向一个可访问的内存位置。很多时候未初始化的变量存有一些垃圾值,导致程序难以调试。通常在声明指针时如果没有确切的地址可以赋值,可以为指针变量赋一个NULL值。若将所有未使用的指针赋为NULL,同时在使用指针前对指针进行判空处理,就可以防止误用一个未初始化的指针了。3.释放内存

当需要一个动态分配的变量时,必须向系统申请获取相应的内存来存储该变量。当该变量使用结束时,需要显式释放它所占用的内存,从而系统可以回收该内存,以防止内存泄露,同时可以对该内存进行再次分配,做到重复利用。释放内存主要有两种方式:delete和free。一般通过new分配的内存需要配套使用delete来释放内存;通过malloc分配的内存需要配套使用free来释放内存。注意,使用malloc时需要包含头文件stdlib.h。delete和free只是释放了指针指向的内存,指针本身未被释放,即指针指向的地址不变。内存释放并不意味着把指针指向地址存储的值赋值为0,内存被释放的指针此时存储的是一些垃圾值,这时候的指针未被赋值,就是通常所说的“野指针”。指针仍指向已经释放的内存会很危险,因为该内存可能已经被系统回收,重新分配给了其他变量,有时在编程过程中稍有不慎,会误以为是个合法的指针而对该指针进行赋值,就会导致该内存中存放的变量值被覆盖,所以在执行释放内存操作后,应该及时将指针指向NULL地址。实验步骤首先,基于Notepad++软件,新建一个ConvertTime.cpp文件,保存至“D:\QtProject\CPP06.基于数组的秒值-时间值转换实验”文件夹中,然后,将程序清单3-5中的代码输入ConvertTime.cpp文件中。最后,按F6键编译和执行C++文件,在Notepad++的Console栏中,输入80000后回车,可以看到运行结果,即输出“Currenttime:22-13-20”,说明实验成功。本节任务

2020年有366天,将2020年1月1日作为计数起点,即计数1,2020年12月31日作为计数终点,即计数366。计数1代表“2020年1月1日-星期三”,计数1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论