SA17225160_李伯威(libowei)_高级软工第四次实验报告

一、实验要求

用可重用的链表模块来实现命令行菜单小程序,执行某个命令时调用一个特定的函数作为执行动作;
链表模块的接口设计要足够通用,命令行菜单小程序的功能保持不变;可以将通用的Linktable模块集成到我们的menu程序中;
接口规范;

二、实验过程

1.clone并进入共享文件夹


2.建立指定的lab3文件夹
3.用vim编辑linktable.c文件


4.编辑linkltable.h文件

5.编写menu.c文件

6.编译menu.c以及linklist.c文件

7.运行结果

8.上传github

9.github的上传情况

10.https://github.com/lili0001002/cs122/tree/master/lab4

三、课程总结
对#ifndef/#define/#endif防止该头文件被重复引用的理解: “被重复引用”是指一个头文件在用一个cpp文件中被include了多次,这种错误常常是由于include嵌套造成的。比如:存在a.h文件#include "c.h",而此时b.cpp文件导入了#include "a.h"和#include "c.h",就会造成c.h重复引用。这种重复应用最直接的坏处就是增加了编译的工作量,甚至可能会导致程序出错。所以,C语言中通过#ifndef/#define/#endif来避免上述情况的发生。


关于struct和typedef struct的理解:


typedef struct tagMyStruct
{
int iNum;
long lLength;
}MyStruct;
上面的tagMyStruct是标识符,MyStruct是变量类型(相当于int类型)。而上述的程序相当于完成了两个操作。


1.它定义了一个新的结构类型


struct tagMyStruct
{
int iNum;
long lLength;
};
2.typedef为这个新的结构起了一个名字,叫MyStruct


typedef struct tagMyStruct Mystruct;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值