C学习记录5——函数

11 篇文章 1 订阅

一、函数概述

1.函数分类

  • 系统函数(库函数)
  • 用户定义函数

2.作用

  • 省去重复代码编写,降低重复率
  • 让程序更加模块化,利于阅读修改完善

3.函数调用

头文件、函数名、功能、参数、返回值
eg:产生随机数
导入头文件 <time.h>、 <stdlib.h>
time(NULL); 获取当前系统时间(相当于long类型,单位毫秒)
srand((unsigned int) seed);设置rand()的随机数种子,若每次seed相等,则rand()产生随机数相等
rand(); 返回一个随机数
rand()%500+1500,1500到2000范围的随机数

#include <time.h>
#include <stdlib.h>

int main()
{
	srand((unsigned int)time(NULL));  //强制类型转换
	int num = rand()%10;  //0-9的随机数
}

二、函数的定义

1.函数定义的一般格式

返回值类型 函数名(参数列表)
{
代码体
return 返回值(可为表达式,自动转换为返回值类型);
}

  • 若不需要返回值,类型写void ,最后写return;或不写此句
  • 参数为形式参数,可设置默认值,一个默认参数之后的参数都必须有默认值,函数声明有默认参数,实现就不能有。
  • 中括号{}内为函数体
  • 到return时函数停止

三、函数的调用

1.main()中

函数名(实参列表);

  • 实参可为常量,表达式,有确定值传递给形参
  • 调用结束后函数会在栈区自动销毁
  • 形参不影响实参的值(值传递)

2.无参函数的调用

函数名(); 即可

四、函数的声明

若函数在主函数之前定义,则不必声明,否则需声明,再调用。可声明其他文件中的函数再调用。
形式:extern 返回值类型 函数名(参数列表);
extern可省略,参数的声明可只写参数类型,不写或重写参数名

五、main与exit函数

exit(); 终止程序执行,()内写整数(类似return的返回值)
main中exit与return结果相同,但子函数中return终止函数,exit终止程序

六、多文件(分文件)编程

  • 函数声明放于头文件中,在主函数中包含相应的头文件,源文件中定义函数
  • 防止头文件重复包含(分文件可能把同一头文件include多次,或头文件嵌套包含)
    避免方式:
    1.#pragma once (只能用于windows)
    2.如下
#ifndef __文件名_H__
#define __文件名大写字母_H__
	声明语句
#endif
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你好!感谢提问。下面是有关 K210 学习笔记五中串口通信的一些内容: 在 K210 开发板上,串口是一种常见的通信接口,用于将数据从一个设备传输到另一个设备。串口通信通常使用 UART (Universal Asynchronous Receiver/Transmitter) 协议。 要在 K210 上进行串口通信,首先需要使用两个引脚:一个用于接收数据(RX),一个用于发送数据(TX)。这些引脚可以通过 GPIO 端口与外部设备连接。 在 K210 的开发环境中,可以使用 MaixPy 或者 Kendryte Standalone SDK 进行串口编程。 在 MaixPy 中,可以使用 `uart` 模块来进行串口通信。例如,要初始化一个串口对象并设置波特率为 115200,可以使用以下代码: ```python from machine import UART uart = UART(UART.UART1, 115200) ``` 然后,可以使用 `uart.write()` 函数发送数据,使用 `uart.read()` 函数接收数据。例如: ```python uart.write("Hello, world!\n") data = uart.read(10) ``` 在 Kendryte Standalone SDK 中,可以使用 `uart.h` 头文件中的函数来进行串口通信。例如,要初始化一个串口对象并设置波特率为 115200,可以使用以下代码: ```c #include "uart.h" uart_init(UART_DEVICE_1, 115200); ``` 然后,可以使用 `uart_send_data()` 函数发送数据,使用 `uart_receive_data()` 函数接收数据。例如: ```c uart_send_data(UART_DEVICE_1, "Hello, world!\n", 14); char buffer[10]; uart_receive_data(UART_DEVICE_1, buffer, 10); ``` 以上是关于 K210 学习笔记五中串口通信的简要介绍。如果你有更具体的问题,请随时提问!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值