C语言(三)

C语言——函数(20210701)

随机数

  • 头文件
	#include<time.h>
	#include<stdlib.h>
  • 添加随机数种子
	srand((size_t)time(NULL))
	int a = rand()%50+51		//51-100
  • 随机数函数
	#include <stdlib.h>
	int rand(void);
	功能:返回一个随机数值
	参数:无
	返回值:随机数

函数

  • 函数定义与使用
	返回类型 函数名(形式参数列表)
	{
		数据定义部分;
		执行语句部分;
	}
  • 函数名
    理论上是可以随意起名字,最好起的名字见名知意,应该让用户看到这个函数名字就知道这个函数的功能。注意,函数名的后面有个圆换号(),代表这个为函数,不是普通的变量名。
  • 形参列表
    在定义函数时指定的形参,在未出现函数调用时,它们并不占内存中的存储单元,因此称它们是形式参数或虚拟参数,简称形参,表示它们并不是实际存在的数据,所以,形参里的变量不能赋值。
  • 返回值
    函数的返回值是通过函数中的return语句获得的,return后面的值也可以是一个表达式。
  • 函数的形参和实参
    • 形参出现在函数定义中,在整个函数体内都可以使用,离开该函数则不能使用。
    • 实参出现在主调函数中,进入被调函数后,实参也不能使用。
    • 实参变量对形参变量的数据传递是“值传递”,即单向传递,只由实参传给形参,而不能由形参传回来给实参。
    • 在调用函数时,编译系统临时给形参分配存储单元。调用结束后,形参单元被释放。
    • 实参单元与形参单元是不同的单元。调用结束后,形参单元被释放,函数调用结束返回主调函数后则不能再使用该形参变量。实参单元仍保留并维持原值。因此,在执行一个被调用函数时,形参的值如果发生改变,并不会改变主调函数中实参的值。
  • 函数的声明
    如果使用用户自己定义的函数,而该函数与调用它的函数(即主调函数)不在同一文件中,或者函数定义的位置在主调函数之后,则必须在调用此函数之前对被调用的函数作声明。
    所谓函数声明,就是在函数尚在未定义的情况下,事先将该函数的有关信息通知编译系统,相当于告诉编译器,函数在后面定义,以便使编译能正常进行。
    注意:一个函数只能被定义一次,但可以声明多次。
  • main函数与exit函数
    在main函数中调用exit和return结果是一样的,但在子函数中调用return只是代表子函数终止了,在子函数中调用exit,那么程序终止。

多文件(分文件)编程

  • 分文件编程
    • 把函数声明放在头文件xxx.h中,在主函数中包含相应头文件
    • 在头文件对应的xxx.c中实现xxx.h声明的函数
  • 防止头文件重复包含
    当一个项目比较大时,往往都是分文件,这时候有可能不小心把同一个头文件 include 多次,或者头文件嵌套包含。
    为了避免同一个文件被include多次,C/C++中有两种方式,一种是 #ifndef 方式,一种是 #pragma once 方式。
	#ifndef __SOMEFILE_H__
	#define __SOMEFILE_H__
	// 声明语句
	#endif
	#pragma once	// 防止头文件重复包含
	// 声明语句
  • 头文件
    • 全局变量定义
    • 函数声明
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值