01-01-11

1、day11作业

使用的代码

#include<stdio.h>
#include<stdlib.h>
int main()
{int i;//申请多大的空间scanf("%d", &i);char* p = (char*)malloc(i);//不进行强制类型转换,会产生警告char c;scanf("%c", &c);//清空上面申请空间时在缓冲区遗留的换行。最好不要使用rewind()清空缓冲区:微软可以使用,gcc不可用(OJ平台是gcc)gets(p);//gets()读取缓冲区中的数据,一直到\n时,不在读取:\n没有读取。puts(p);return 0;
}

2、字符指针与字符数组的初始化

char*p="hello":此时p指向的是"hello"这个字符串的首地址,可以利用此指针借助下标,访问字符串中的具体数据:printf("%c",p[0])

char c[10]="hello":此时是将字符串"hello"放到这个字符数组中。数组的第一个元素就是该字符串的首字母。

使用的代码:

int main()
{char* p = "hello";char c[10] = "hello";printf("%c\n", p[0]);//正常打印printf("%c\n", c[0]);//正常打印//p[0] = 'H';//不可用指针+下标,修改指针指向的字符串p = "world";//将字符串world的地址赋值给p。任何一个字符串都有起始地址,此处相当于用world的起始地址替换p指针中原来hello字符串的起始地址c = "world";//定义数组时,已经确定了这个数组的地址,存放于数组名中,这个数组的地址不可修改。即c中的值不可修改。此时的数组名相当于一个常量return 0;
}

3、二级指针传递的说明

二级指针就是一级指针取地址后的结果。

一级指针就是普通变量取地址后的结果。

int**p=&pi

*p=pj

指针解引用的具体步骤:

①p是二级指针,二级指针p解引用后,得到内部的地址4000。

②根据此地址,找到对应的空间。

③将该空间内部的数据换为变量pj中的值,也就是将pi中的值换为pj中的值。

总结:根据指针内部的地址,找到对应空间,改变该空间中的值。

4、函数的说明

a.多个文件的的执行流程:

先进行编译:

func.c变为func.obj

源.c变为源.c

再进行链接:

将func.obj和源.obj链接形成:1-函数的嵌套调用.exe

b.没有函数声明时,函数默认返回整数类型。

c.定义函数时,形参只在调用调用函数时才占用内存单元。

文件结构

使用的代码

func.h文件:

#include<stdio.h>
int printstar(int i);//函数的声明:返回值+函数名+形参类型和形参+分号
void print_message();

func.c文件c

#include"func.h"
//printstar函数的定义
int printstar(int i)
{
​printf("*************************\n");printf("printstar %d\n", i);return i + 3;
​
}
//print_message函数的定义
void print_message()
{printf("how do you do\n");printstar(3);
}

源.c文件

#include"funcc.h"//自己写的头文件需要用""引起。双引号的头文件:表示在源.c文件会在自身处的文件夹下搜索需要的头文件func.h:即源.c和func.h必须在同一个文件夹下
//当代码处于不同文件下时,需要使用其他文件中的函数时,要在头文件中包含对该函数的声明。若是没有声明函数,则会提示该函数没有定义(国内说法)
//函数未声明亦可调用的原因:微软的VS中,若是没有声明函数,则其会在源文件中搜寻需要的函数,进而实现调用
//strcpy没有头文件也可运行的原因:此函数的实现是在C库中,而头文件中只是声明
int main()
{int a = 10;a = printstar(a);//printstar函数的调用print_message();//print_message函数的调用printstar(a);return 0;
}

5、全局变量

使用的代码

int i = 10;//全局变量,再函数外定义的变量称为全局变量。全局变量放在数据区中
void print(int a)
{printf("print i=%d\n", i);//此处的i=5
}
int main()
{printf("main i=%d\n", i);//此处的i=10i = 5;//此处的i和数据区中的i是同一个int i = 5;//此处的i是放在栈空间中的局部变量print(i);//全局变量和局部变量同名时,遵循就近原则:远近看的是调用时的距离,而不是和执行函数的距离return 0;
}

6、递归调用

概念:函数在自身的函数体内部调用自己:这种函数称为递归函数

递归是有限的,一定要找时间,多刷点题目

使用的代码

int f(int n)
{cif (1 == n){return 1;//第二步写结束条件}return n * f(n - 1);//第一步写好公式
}
int main()
{int n = 5;int result = f(n);printf("%d\n", result);return 0;
}

参考视频

链接:https://pan.baidu.com/s/1cl5q51gC3wHEmAhOjVoUYA?pwd=tdoo 
提取码:tdoo

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/9359.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AutoDL服务器远程桌面

文章目录 1.安装VNC和必要的一些图形显式库:2.SSH隧道2.1.本地安装openssh服务器2.2.服务开启2.3.显示当前安装的 SSH 版本信息2.3.设置一个 SSH 隧道 注意3.VNC Viewer客户端登录4.测试5.参考 VNC&#xff08;Virtual Network Computing &#xff09;是一种图形化的桌面共享协…

python实现背单词程序

欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一.前言 二.代码 三.使用 四.分析 一.前言 背单词是学习英语的一个重要环节,它有很多好处,以下是其中一些主要的好处: 提高词汇量

机器学习各个算法的优缺点!(下篇) 建议收藏。

上篇地址&#xff1a;机器学习各个算法的优缺点&#xff01;&#xff08;上篇&#xff09; 建议收藏。-CSDN博客 直接进入主题。 目录 6.降维算法 7.聚类算法 8.贝叶斯算法 9.人工神经网络 10.深度学习 谢谢观看。 6.降维算法 降维算法是一类用于减少数据维度的技术。 …

C++容器——stack

stack容器 C的std::stack容器是一个基于适配器模板类实现的容器适配器&#xff0c;它提供了一种后进先出的数据结构&#xff0c;即栈。 特点&#xff1a; 1.后进先出&#xff1a;元素在栈容器中按照后进先出的顺序管理&#xff0c;最后放入的元素将会最先被取出。 2.只能从栈…

盲盒一番赏小程序:探索未知,开启神秘宝藏之旅

开启神秘之门&#xff0c;探索未知的乐趣 在繁忙的生活中&#xff0c;我们渴望一丝丝未知带来的惊喜与乐趣。盲盒一番赏小程序&#xff0c;正是为了满足您这种探索未知的欲望而诞生。它不仅仅是一个购物平台&#xff0c;更是一个充满神秘与惊喜的宝藏世界。 精选好物&#xf…

诊所医院超常规运营管理思维课程

本课程旨在引领医疗机构管理者超越传统思维&#xff0c;探索创新运营管理策略。学员将学习领先的医疗管理理念、创新的运营模式&#xff0c;以及如何应对挑战和变革。课程内容涵盖战略规划、资源优化、服务创新等&#xff0c;帮助管理者提升运营效率&#xff0c;提供更优质的医…

【SpringBoot整合系列】SpringBoot整合RabbitMQ-基本使用

目录 SpringtBoot整合RabbitMQ1.依赖2.配置RabbitMQ的7种模式1.简单模式&#xff08;Hello World&#xff09;应用场景代码示例 2.工作队列模式&#xff08;Work queues&#xff09;应用场景代码示例手动 ack代码示例 3.订阅模式&#xff08;Publish/Subscribe&#xff09;应用…

远程开机与远程唤醒BIOS设置

远程开机与远程唤醒BIOS设置 在现代计算机应用中&#xff0c;远程管理和控制已成为许多企业和个人的基本需求。其中&#xff0c;远程开机和远程唤醒是两项非常实用的功能。要实现这些功能&#xff0c;通常需要在计算机的BIOS中进行一些特定的设置。以下是对远程开机和远程唤醒…

VS2019下使用MFC完成科技项目管理系统

背景&#xff1a; &#xff08;一&#xff09;实验目的 通过该实验&#xff0c;使学生掌握windows程序设计的基本方法。了解科技项目组织管理的主要内容和管理方面的基本常识&#xff0c;熟练应用数据库知识&#xff0c;通过处理过程对计算机软件系统工作原理的进一步理解&…

Python批量备份华为设备配置到FTP服务器

Excel表格存放交换机信息&#xff1a; 备份文件夹效果图&#xff1a; Windows系统配置计划任务定时执行python脚本&#xff1a; Program/script&#xff1a;C:\Python\python.exe Add arguments (optional)&#xff1a; D:\Python_PycharmProjects\JunLan_pythonProje…

verilog中输入序列不连续的序列检测

编写一个序列检测模块&#xff0c;输入信号端口为data&#xff0c;表示数据有效的指示信号端口为data_valid。当data_valid信号为高时&#xff0c;表示此刻的输入信号data有效&#xff0c;参与序列检测&#xff1b;当data_valid为低时&#xff0c;data无效&#xff0c;抛弃该时…

如何通过wifi网络将串口数据发送到多个设备

摘要&#xff1a;当lora电台的速率无法满足高速传输时&#xff0c;可以考虑用“串口服务器”。本文介绍一下如何使用TP-LINK的TL-CPE300D实现一对多的数据发送。 当前也有使用lora电台的&#xff0c;但是lora电台支持的速率有限&#xff0c;可能最大支持到9600&#xff0c;甚至…

TC3xx MTU概述(1)

目录 1.MTU基本功能 2.MBIST 3.小结 1.MTU基本功能 在TC3xx中&#xff0c;MTU(Memory Unit Test)被用来管理控制芯片内部各种RAM的测试、初始化和数据完整性检查。 既然MTU主要是管理和控制&#xff0c;那干活的想必另有他人。所以在该平台中&#xff0c;我们可以看到SRAM…

Electron-Vue 脚手架避坑实录,兼容Win11,升级electron22,清理控制台错误

去年的还是有用的&#xff0c;大家继续看&#xff0c;今年再补充一些Electron-Vue 异常处理方案 M1 和 Window10_electron异常处理-CSDN博客 代码gitee.com地址 electron-demo: electron 22 初始代码开发和讲解 升级electron为22版本&#xff08;这个版本承上启下&#xff0c…

怎么用git在暂存区(stage)中移除不需要提交(commit)的文件?

2024年5月9日&#xff0c;周四上午 非常简单&#xff0c;用下面这条命令就可以了 git rm --cached <file>注&#xff1a;这条命令不会把文件从文件夹中删除&#xff0c;只会把文件从暂存区中移除出去 实战

《Python编程从入门到实践》day23

# 昨日知识点回顾 操控飞船移动发射子弹&#xff0c;删除屏幕之外的子弹 #今日知识点学习 第13章 外星人 13.1 项目回顾 项目添加新功能前审核既有代码&#xff0c;对混乱或低效的代码进行清理 13.2 创建第一个外星人 13.2.1 创建Alien类 # alien.py imp…

影响视频视觉质量的因素——各类视觉伪影

模糊效应&#xff08;Blurring Artifact&#xff09; 图像模糊&#xff08;blurring&#xff09;&#xff1a;平滑图像的细节和边缘产生的现象&#xff0c;模糊对于图像来说&#xff0c;是一个低通滤波器&#xff08;low-pass filter&#xff09;。一般而言&#xff0c;用户更…

商品上新业务状态机接入实践

一、商品上新业务介绍 商品上新即为在得物平台上架一个新的商品&#xff0c;一个完整的商品上新流程从各种不同的来源渠道提交新品申请开始&#xff0c;需要历经多轮不同角色的审核&#xff0c;主要包括&#xff1a; 选品审核&#xff1a;根据新品申请提交的资料信息判定是否符…

Docker 怎么将映射出的路径设置为非root用户权限

在Docker中&#xff0c;容器的根文件系统默认是由root用户拥有的。如果想要在映射到宿主机的路径时设置为非root用户权限&#xff0c;可以通过以下几种方式来实现&#xff1a; 1. 使用具有特定UID和GID的非root用户运行容器&#xff1a; 在运行容器时&#xff0c;你可以使用-u…

17 空闲空间管理

目录 假设 底层机制 分割与合并 追踪已分配空间的大小 嵌入空闲列表 让堆增长 基本策略 最优匹配 首次匹配 下次匹配 其他方式 分离空闲列表 伙伴系统 小结 分页是将内存成大小相等的内存块&#xff0c;这样的机制下面&#xff0c;很容易去管理这些内存&#xff0c…