3. 构建多文件程序

3. 构建多文件程序

案例-在线电子商务
 
在这个案例中我们有四个模块:商品、客户、订单和购物车,我们将根据这些模块来定义不同的头文件和源文件。
商品的头文件和源文件:
product.h
 
#ifndef C_15_01_product_h
#define C_15_01_product_h
// 设置商品编号
void setpid(int pid);
// 获得商品编号
int getpid();
// 设置商品名称
void setpname(char *pname);
// 获得商品名称
char *getpname();
#endif
 
product.c
 
#include <stdio.h>
#include "product.h"
// 商品编号
int pid;
// 商品名称
char *pname;
void setpid(int mypid){
    pid = mypid;
}
int getpid(){
    return pid;
}
void setpname(char *mypname){
    pname = mypname;
}
char *getpname(){
    return pname;
}
 
测试代码:
#include <stdio.h>
#include "product.h"
int main(int argc, const char * argv[])
{
    setpid(101);
    setpname("iOS 应用开发详解");
  
    int pid = getpid();
    char *pname = getpname();
    printf("%d,%s",pid,pname);
    return 0;
}
运行结果:
101,iOS 应用开发详解
customer.h
#ifndef C_15_01_customer_h
#define C_15_01_customer_h
// 设置客户名称
void setcname(char *cname);
// 获得课程名称
char *getcname();
// 注册
int regist();
// 登陆
int login();
#endif
customer.c
#include <stdio.h>
#include "customer.h"
char *cname;
// 设置客户名称
void setcname(char *mycname){
    cname = mycname;
}
// 获得客户名称
char *getcname(){
    return cname;
}
// 注册
int regist(){
    printf("%s 注册成功!",cname);
    return 1;
}
// 登陆
int login(){
    printf("%s 登陆成功!",cname);
    return 1;
}
程序测试代码:
#include <stdio.h>
#include "product.h"
#include "customer.h"
 
int main(int argc, const char * argv[])
{
    setcname("tom");
            regist();
    login();
 }
运行结果:
tom 注册成功!
tom 登陆成功!
order.h
#ifndef C_15_01_order_h
#define C_15_01_order_h
// 设置订单编号
void setoid(int oid);
// 获得订单编号
int getoid();
// 设置订单名称
void setoname(char *oname);
// 获得订单名称
char *getoname();
#endif
 
order.c
 
#include <stdio.h>
int oid;
char *oname;
// 设置订单编号
void setoid(int myoid){
    oid = myoid;
}
// 获得订单编号
int getoid(){
    return oid;
}
// 设置订单名称
void setoname(char *myoname){
    oname = myoname;
}
// 获得订单名称
char *getoname(){
    return oname;
}
cart.h
 
#ifndef C_15_01_cart_h
#define C_15_01_cart_h
// 获得商品数量
int getcount();
// 添加
void add();
// 删除
void del();
#endif
 
cart.c
 
#include <stdio.h>
#include "cart.h"
int count;
// 添加
void add(){
    count++;
}
// 删除
void del(){
    count--;
}
// 获得产品数量
int getcount(){
    return count;
}
测试代码:
#include "cart.h"
int main(int argc, const char * argv[])
{
    add();
    add();
    int count = getcount();
    printf("当前产品数量:%d\n",count);
    del();
    count = getcount();
    printf("当前产品数量:%d\n",count);
}
运行结果:
当前产品数量:2
当前产品数量:1

该博客教程视频地址:http://geek99.com/node/1031

转载于:https://my.oschina.net/u/1582336/blog/264320

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值