C语言学习-自定义头文件和实现头文件以及数组

目的

1.学会自定义头文件和实现头文件
2.学会定义数组及应用

技术

1.定义头文件和实现
2.数组的应用

技术的应用

1.定义头文件和实现文件

上一篇提到的用函数实现ATM机的功能
我们可以自定义头文件,将函数的声明和实现分离开来。让整个程序看起来更加清晰明了简洁
自定义头文件.h 实现头文件.c
.h函数的声明 变量的声明(不能赋值)
.c具体实现 实现函数的功能 操作变量

封装:封装某些功能,便于移植(方便下次使用)

自定义步骤
1.创建.h文件
声明函数\暴露接口给外部使用
2.创建.c文件
函数的具体实现
3.在.c文件里面导入.h文件
相当于在.c文件里面有函数的声明和实现
4.在使用的地方导入.h文件就可以了
注意:1.尽量让对应的.h和.c文件名相同
2.头文件相互引用可能会出错
解决办法:使用宏定义
#ifndef
#define
代码块
#endif

宏定义:1.给特定的数值一个特定的意义
2.便于管理
ex:#define wechat 1;
#define qq 2;

举一个简单的例子
首先我们创建一个.h文件

//函数声明 暴露给外部使用
//登陆
void login_ATM(void);

然后再创建一个.c文件(注意.c文件的名字尽量和.h相同)

#include "ATMoperation.h"
#include "stdafx.h"
#include "iostream"

//函数具体实现  还有私有的东西
void login_ATM(void){
    printf("登陆\n");
    system("pause");
}

由代码可以看到我们是要实现程序运行后,显示登陆两个字的功能

于是在主函数当中

#include "stdafx.h"
#include "iostream"
#include "ATMoperation.h"

void login_ATM(void);

int _tmain(int argc, _TCHAR* argv[])
{
    login_ATM();
    system("pause");
    return 0;
}
2.数组的应用

数组:需要存储多个同种类型的数据
1.能够存储数据 就必须要有内存
2.如何定义一个数组的同时为他分配内存空间
3.数组定义必须明确知道数组的大小
a.初始化几个就是几个

    float score[] = {1,2,3};

b.在定义时明确指定数组的大小

 int temp[5] = {};

c.明确指定大小 并且初始化部分数据

int temp2[5] = {1,2};

4.数组的名字就是数组的首地址(第一个元素的地址)

如何使用数组
1.访问 通过下标来访问 0 - n-1

printf("%d\n", temp2[0]);

2.赋值

temp2[0] = 9;

数组的简单运用

题目1:计算1.2.3.4.5.....100的和

int a[100] = {};
int temp = 0;

for (int i = 0; i < 100; i++)
{
    a[i] = i + 1;
    temp = temp + a[i];
}

printf("1到100的和为:%d", temp);

题目2:输入一个数字,计算出它的二进制数

#include "stdafx.h"
#include "iostream"

int _tmain(int argc, _TCHAR* argv[])
{
int num;

printf("输入一个数字:");
scanf("%d", &num);
int temp = num;
//二进制

int rem[100] = {};
int i = 0;
while (temp > 0)
{
    rem[i] = temp % 2;
    temp = temp / 2;
    i++;
    
}

for ( int j = i-1;j >= 0; j--)
{
    printf(" %d", rem[j]);
}

system("pause");
return 0;
}

心得

自定义头文件一开始听的时候感觉特别麻烦,但是仔细回想,就会发现只要逻辑理顺了,道理自然就懂了。还有数组的运用,不是很难,但是在使用数组的时候一定要仔细一点,少犯一些粗心的错误。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,277评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,689评论 3 393
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,624评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,356评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,402评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,292评论 1 301
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,135评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,992评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,429评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,636评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,785评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,492评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,092评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,723评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,858评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,891评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,713评论 2 354

推荐阅读更多精彩内容