C语言(续)

1.字符串

1.格式:需要用双引号引起来

2.结尾:添加\0

3.常见写法

4.细节:1.实际存储时,以字符数组进行存储

2.数组长度,要么不屑,如果写长度记得把结束标记的空间预留出来

3.字符数组+双引号形式定义字符串,内容可以发生改变

4.用指针+双引号定义字符串,会把底层的字符数组放在只读常量区

只读常量区特点:内容不可修改,定义字符串可以复用

5.遍历字符串

1.注:键盘录入时不能使用指针定义字符串

实操实例:

6.字符串数组

7.字符串常见函数

细节:1.strlen统计长度时,不算结束标记

2.在Windows中,默认情况下,一个中文站两个字节

3.strcat把第二个字符串全部的内容,拷贝到第一个的末尾

前提:1.第一个字符串可以被修改

2.第一个字符串中剩余空间可以容纳拼接字符串

4.strcpy中把第二个字符串全部的内容,拷贝到第一个字符串中,并覆盖原有内容

前提:1.第一个字符串可以被修改

2.第一个字符串空间可以容纳拼接的字符串

5.strcmp中两个字符串完全一样,返回0,不一样,返回非0数

6.用strlwr和strupr时,需要加下划线,且只能修改英文大小写

2.结构体

1.格式

2.定义:自定义数据类型即多个数据组合的整体,每一个数据都是结构体成员

3.位置

1.函数外面:全局位置,在所有函数使用

2.函数里面:局部位置,只在本函数使用

2.结构体数组

实操实例:

3.起别名

1.格式

2.注:正式名称可在起别名后省略

4.结构体作为函数参数

1.分类:传递结构体数据值,传递结构体地址值

2.实操实例

3.细节

5.结构体嵌套

1.格式

注:结构体进行嵌套时,大括号也需要进行嵌套

6.内存对齐

1.确定变量位置:只能放在自己类型整数倍的内存地址上

2.最后一个补位:结构体的总大小,是最大类型的整数倍

3.总结

建议:把小的数据类型卸载最上面,大的写在下面

3.共用体

1.核心:一种数据可能有多种类型

2.格式

3.实操实例

4.特点

5.结构体和共用体的区别

1.结构体:一种事物包含多个属性

共用体:一个属性有多种类型

2.存储方式和内存占用

3.动态内存分配

1.函数名称和作用

2.注:在使用函数前需导入stdlib.h头文件

实操实例

3.malloc函数细节

4.free函数细节

5.calloc和realloc函数细节

6.C语言内存结构

4.文件

1.路径:文件在电脑的位置

2.路径表示方式:1.绝对路径(以盘符为开始)

2.相对路径(相对于当前项目开始)

3.路径以字符串形式进行表示

4.\:表示改变\后面这个符号原本的含义

5.利用fgetc依次读取一个字节

6.文件读写格式

7.实操实例

8.利用fgets一次读取一行数据

1.代码格式

2.细节:1.每次读取一行数据,以换行符为准

3.如读不到了,返回NULL

9.利用fread依次读取多个字节

1.代码格式

2.细节:1.英文abc占用一个字节

2.中文在Windows64位中,默认2个字节

3.fread细节:在读取时,每次尽可能会把数组给装满,返回当前读取到的有效字节个数

3.当读取字节不够时,可以再次以字符形式遍历

实操实例:

10.写出数据

1.书写步骤

2.代码示例

3.如果写出失败,会出现一个EDF的错误

相关推荐
guygg887 分钟前
人行走作用下板的振动响应 MATLAB 仿真
开发语言·matlab
小二·28 分钟前
Next.js 15 全栈开发实战
开发语言·javascript·ecmascript
fox_lht30 分钟前
15.3.改进我们之前的输入、输出项目
开发语言·后端·学习·rust
java1234_小锋1 小时前
LangChain4j 开发Java Agent智能体- 多模态支持
java·开发语言·langchain4j
凡人叶枫1 小时前
Effective C++ 条款23:宁以 non-member、non-friend 替换 member 函数
linux·开发语言·c++·嵌入式开发
2601_950526431 小时前
程序设计语言(C)
c语言·数据类型·实验教学·编译预处理·程序设计语言(c)
张忠琳1 小时前
【Go 1.26.4】Golang Channel 深度解析
开发语言·后端·golang
盈建云系统1 小时前
B2B产品展示网站怎么做?从产品目录到询盘表单,企业获客页面搭建流程
开发语言·网站搭建·开发网站
不会C语言的男孩1 小时前
Linux 系统编程 · 第 4 章:文件属性与元数据
linux·c语言·开发语言
kernelcraft1 小时前
Boto3:Python 操作 AWS 的官方 SDK
开发语言·python·其他·aws