- 博客(155)
- 收藏
- 关注
原创 每日一个C语言知识:C 错误处理
/ 自定义错误码// 错误信息映射"操作成功","空指针错误","无效输入","内存不足","文件I/O错误","网络错误","计算错误"// 错误处理函数if (code!fprintf(stderr, "错误 [%d]: %s - %s\n",// 根据错误严重程度决定是否退出fprintf(stderr, "严重错误,程序退出\n");// 示例函数:安全的除法// 示例函数:安全的字符串复制// 确保字符串终止。
2025-10-30 12:13:19
1014
原创 每日一个C语言知识:C 强制类型转换
转换类型语法注意事项基本类型转换(int)3.14可能丢失精度指针类型转换非常危险,需谨慎void指针转换相对安全,通用性强函数指针转换极度危险,避免使用。
2025-10-29 12:14:12
478
原创 每日一个C语言知识:C 预处理器
ifndef MATH_UTILS_H // 头文件保护,防止重复包含// 函数声明// 常量定义#define PI3.14159100# ifndef MATH_UTILS_H // 头文件保护,防止重复包含 # define MATH_UTILS_H // 函数声明 int add(int a , int b);// 常量定义 # define PI 3.14159 # define MAX_VALUE 100 # endif// 函数实现。
2025-10-27 20:36:45
856
原创 每日一个网络知识点:应用层SNMP协议
SNMP是简单网络管理协议,是专门设计用于IP网络管理网络节点的协议。它使网络管理员能够管理网络效能,发现并解决网络问题,以及规划网络增长。
2025-10-25 15:01:23
1251
原创 每日一个C语言知识:C 文件读写
函数用途特点fopen()打开文件指定文件名和模式fclose()关闭文件释放资源,必须调用fprintf()格式化写入类似printf,但写入文件fscanf()格式化读取类似scanf,但从文件读取fputs()写入字符串不自动添加换行fgets()读取字符串安全,推荐使用fputc()写入字符逐个字符写入fgetc()读取字符逐个字符读取fwrite()二进制写入用于结构体等数据fread()二进制读取用于结构体等数据fseek()移动文件指针随机访问文件ftell()
2025-10-25 14:52:16
607
原创 每日一个网络知识点:应用层FTP协议
FTP是文件传输协议,是用于在网络上进行客户端和服务器之间文件传输的应用层协议。它是最早被广泛使用的文件传输协议之一,至今仍在许多场景中发挥作用。
2025-10-24 20:03:12
1005
原创 每日一个C语言知识:C 输入 & 输出
这是最常用的输出函数,可以将数据按指定格式输出到标准输出设备(通常是屏幕)。C语言本身不提供输入输出语句,而是通过标准库函数来实现。读取字符串时,遇到空格会停止。要读取包含空格的字符串,可以使用。函数不安全,已从C11标准中移除,因为它不检查缓冲区大小。C语言也提供了文件操作函数,语法与标准I/O类似。从标准输入设备(通常是键盘)读取格式化数据。自动在字符串末尾添加换行符。
2025-10-24 19:59:35
509
原创 每日一个C语言知识:C typedef
typedef用于为已有的数据类型定义一个新的名称(别名)。它并不创建新的数据类型,只是为现有类型提供一个更容易理解或更简洁的名字。// 定义结构体int x;int y;// 为结构体定义别名// 使用原名称(需要struct关键字)// 使用别名(不需要struct关键字)return 0;// 在定义结构体的同时创建别名int age;} Employee;// 直接使用别名,不需要struct关键字。
2025-10-23 21:13:52
472
原创 每日一个网络知识点:应用层E-mail
电子邮件系统是典型的客户端-服务器架构,由多个组件协同工作:fill:#333;color:#333;color:#333;fill:none;接收方发送方MTA 邮件传输代理MDA 邮件投递代理MUA 邮件用户代理收件人发件人MUA 邮件用户代理MTA 邮件传输代理Internet。
2025-10-23 20:37:18
972
原创 每日一个C语言知识:C 位域
位域允许我们在结构体中定义成员变量占用的位数,而不是完整的字节。这让我们能够更精细地控制内存使用,特别适合存储只需要少量位就能表示的标志位或小范围数值。特性描述节省内存主要优势,特别适合嵌入式系统语法类型 成员名 : 位数;取值范围受位数限制(n位无符号:0到2ⁿ-1,n位有符号:-2ⁿ⁻¹到2ⁿ⁻¹-1)限制不能取地址,不能创建数组,布局依赖编译器应用场景标志位、协议头部、硬件寄存器映射、权限控制位域是C语言中优化内存使用的强大工具,但在需要跨平台或精确控制位布局时,位运算可能是更好的选择。
2025-10-22 19:44:29
654
原创 每日一个网络知识点:应用层WWW与HTTP
WWW(World Wide Web)中文译为"万维网",是一个由无数个互相链接的超文本文档组成的全球信息系统。
2025-10-22 19:39:41
1959
原创 每日一个C语言知识:C 共用体
共用体是一种特殊的数据类型,它允许您在不同的时间(不是同时)存储不同类型的数据。它的所有成员共享同一块内存空间。共用体中所有成员的起始地址都是相同的。这意味着,修改一个成员的值,会直接影响其他成员的值。使用union关键字来定义,语法与结构体struct非常相似。union 共用体名称 {数据类型 成员1;数据类型 成员2;// ... 更多成员int i;// 4字节(通常)float f;// 4字节(通常)// 20字节union Data类型的一个变量将占用20个字节。
2025-10-21 14:18:38
747
1
原创 每日一个网络知识点:应用层DHCP协议
DHCP是动态主机配置协议,是一种网络管理协议,用于自动为网络中的设备分配IP地址及其他网络配置参数。可以说,DHCP是现代网络能够"自动工作"的关键所在!
2025-10-21 14:09:49
365
原创 每日一个C语言知识:C 结构体
结构体是一种用户定义的数据类型,它允许我们将多个不同类型的数据项组合成一个单一的复合数据类型。结构体是C语言中实现面向对象编程思想的基础。结构体的主要用途组织相关数据创建复杂的数据结构实现面向对象的概念提高代码的可读性和可维护性// 定义结构体类型int age;char grade;// 注意:这里需要分号// 定义结构体类型并声明变量int x;int y;// 同时声明变量// 使用typedef简化结构体类型名int pages;} Book;
2025-10-20 15:01:29
782
原创 每日一个网络知识点:应用层DNS协议
DNS是域名系统,是互联网的一项核心服务。它作为将域名和IP地址相互映射的分布式数据库,能够使人更方便地访问互联网,而不用记住能够被机器直接读取的IP地址。
2025-10-20 14:51:09
1020
原创 每日一个网络知识点:传输层UDP协议
UDP是用户数据报协议,是传输层的两个核心协议之一。提供最基本的传输服务,把复杂性交给应用程序。✅ 实时性要求高于可靠性✅ 数据量小且周期性发送✅ 需要广播或多播功能✅ 应用程序需要自定义传输策略。
2025-10-19 14:37:55
558
原创 每日一个C语言知识:C 字符串
在C语言中,字符串是以null字符(`‘\0’)结尾的字符数组。字符串不是C语言的基本数据类型,而是通过字符数组来实现的。字符串的特点以null字符'\0'结尾存储在字符数组中可以使用字符串字面量初始化有一系列标准库函数用于处理理解字符串函数的最好方式是自己实现它们。// 自定义字符串长度函数while (*s!// 自定义字符串复制函数= '\0') {dest++;src++;// 自定义字符串连接函数// 找到dest的结尾。
2025-10-19 14:28:25
1172
原创 每日一个C语言知识:C 函数指针
函数指针是指向函数的指针变量。就像变量指针存储变量的内存地址一样,函数指针存储函数的内存地址,允许我们通过指针来调用函数。函数指针的主要用途回调函数机制函数表(查找表)动态函数选择实现多态性插件系统架构。
2025-10-18 14:51:55
785
原创 每日一个网络知识点:传输层TCP协议
嘿,今儿咱来好好唠唠传输层里超关键的TCP协议,也就是传输控制协议。这协议在互联网里那可是顶重要的角色,专门负责提供可靠的、面向连接的端到端通信服务。
2025-10-18 06:00:00
1032
原创 每日一个网络知识点:网络层NAT
今天我们来探讨网络层中一项至关重要的技术——。这项技术极大地缓解了IPv4地址枯竭的问题,是当今互联网能够持续扩展的关键所在!
2025-10-17 18:29:51
1083
原创 每日一个C语言知识:C 指针
指针是一个变量,其值是另一个变量的内存地址。简单来说,指针就是存储地址的变量。指针的核心概念每个变量都有内存地址指针存储这些地址通过指针可以间接访问和修改变量的值。
2025-10-17 18:23:10
2037
4
原创 每日一个C语言知识:C enum(枚举)
枚举是一种用户定义的数据类型,用于给整数值分配有意义的名称。它使代码更易读、更易维护,并减少魔法数字的使用。枚举的主要优点提高代码可读性减少错误便于代码维护类型安全检查// 定义枚举类型// 定义枚举类型并声明变量RED, // 0BLUE // 2printf("=== 基本枚举定义 ===\n");// 声明枚举变量printf("今天是一周的第 %d 天\n", today + 1);printf("我喜欢的颜色代码: %d\n", my_color);
2025-10-16 11:17:57
584
原创 每日一个网络知识点:网络层IPv6协议
今天我们来探讨互联网的未来——。随着IPv4地址的枯竭,IPv6已经成为必然选择,它将为万物互联时代提供充足的地址空间!
2025-10-16 11:13:39
1342
原创 每日一个C语言知识:C 数组
数组是一种用于存储固定大小的相同类型元素的顺序集合。数组中的所有元素在内存中是连续存储的,可以通过索引(下标)来访问每个元素。数组的主要特点相同数据类型的元素集合连续的内存空间固定大小(声明时确定)通过索引访问元素(从0开始)// 自定义字符串函数printf("=== 自定义字符串函数 ===\n");return 0;// 自定义字符串长度函数= '\0') {length++;// 自定义字符串复制函数int i = 0;
2025-10-15 12:39:09
1374
原创 每日一个网络知识点:网络层ARP和RARP
ARP(Address Resolution Protocol)是地址解析协议,它负责将IP地址解析为对应的MAC地址。fill:#333;color:#333;color:#333;fill:none;IP地址ARP协议MAC地址逻辑地址物理地址RARP(Reverse Address Resolution Protocol)是反向地址解析协议,它与ARP相反,通过MAC地址来查找对应的IP地址。fill:#333;color:#333;color:#333;fill:none;MAC地址。
2025-10-15 12:33:37
1265
原创 每日一个C语言知识:C 作用域规则
作用域是程序中定义的变量、函数和其他标识符的可见性区域。它决定了在程序的哪些部分可以访问这些标识符。作用域的主要作用控制标识符的可见性管理标识符的生命周期避免命名冲突提高代码的模块化和安全性。
2025-10-14 13:04:37
603
原创 每日一个网络知识点:网络层ICMP协议
ICMP是Internet控制报文协议,它是IP协议的重要辅助协议。ICMP并不传输用户数据,而是用于在网络设备之间传递控制信息和错误报告。
2025-10-14 13:02:57
1058
原创 每日一个网络知识点:网络层地址规划与子网规划
先规划后实施:避免后期大规模调整保持层次结构:体现网络物理和逻辑结构预留扩展空间:为未来发展留有余地文档化:确保规划可维护可传承标准化:建立统一的分配规范定期审核:清理闲置地址,优化使用。
2025-10-13 15:21:50
1142
原创 每日一个C语言知识:C 函数
函数是一组一起执行一个任务的语句,是C语言程序的基本构建块。每个C程序都至少有一个函数(main函数),你可以定义自己的函数来完成特定的任务。函数的主要优点代码重用:一次定义,多次调用模块化:将复杂问题分解为小问题可维护性:易于调试和修改可读性:使代码更加清晰易懂返回类型 函数名(参数列表) {// 函数体return 表达式;// 如果返回类型不是void// 函数定义// 返回类型:void(无返回值)// 函数名:greet// 参数列表:无参数\n");// 带参数的函数。
2025-10-13 15:07:04
1245
原创 每日一个C语言知识:C 循环
循环允许程序重复执行一段代码,直到满足特定条件为止。循环让程序能够高效处理重复性任务,是自动化处理的基础。循环的基本概念循环体:被重复执行的代码块循环条件:控制循环是否继续的条件循环变量:在循环过程中变化的变量迭代:循环体的一次执行。
2025-10-12 14:58:38
1082
原创 每日一个网络知识点:网络层IP协议与IP地址
IP(Internet Protocol)是网络层最重要的协议,它负责在网络上寻址和路由数据包,实现主机到主机的通信。
2025-10-12 14:56:50
970
原创 每日一个C语言知识:C 判断
判断结构允许程序根据条件决定执行哪些代码。它们让程序具有"思考"能力,能够根据不同情况做出不同的响应。判断结构的基本思想评估条件(真或假)根据条件结果执行不同的代码块实现程序的分支逻辑。
2025-10-11 11:40:11
717
1
原创 每日一个网络知识点:数据链路层常见广播方式
在数据链路层,广播指的是一个节点发送的数据帧被同一广播域内的所有其他节点接收的通信方式。这是局域网通信的基础机制。
2025-10-11 11:30:11
1103
原创 每日一个C语言知识:C 运算符
运算符是一种告诉编译器执行特定数学或逻辑操作的符号。C语言提供了丰富的运算符,让我们能够对变量和常量进行各种操作。运算符的组成操作数:运算符作用的对象运算符:执行的操作表达式:运算符和操作数的组合。
2025-10-10 17:11:56
780
原创 每日一个网络知识点:数据链路层点对点协议
点对点协议(Point-to-Point Protocol)是一种在两个节点之间直接建立数据链路连接的数据链路层协议。它提供了在点对点链路上传输数据包的标准方法。
2025-10-10 10:00:00
1792
原创 每日一个C语言知识:C 存储类
存储类定义了C程序中变量和函数的作用域和生命周期。它们决定了程序在内存中如何存储变量,以及这些变量在程序中的可见性。存储类主要控制作用域:变量在程序中哪些部分可以被访问生命周期:变量在内存中存在的时间初始值:变量是否自动初始化存储位置:变量存储在内存的哪个区域。
2025-10-09 10:53:01
439
原创 每日一个网络知识点:数据链路层检错与纠错
今天我们来探讨数据链路层的"质量检测员"——。这些技术确保数据在传输过程中准确无误,是网络可靠性的重要保障!
2025-10-09 10:46:31
776
原创 每日一个C语言知识:C 常量
常量是在程序执行期间其值不会改变的量。与变量不同,常量一旦定义就不能被修改。常量的特点值在程序运行期间不可改变提高代码可读性和可维护性避免魔法数字(magic numbers)便于统一修改#define。
2025-10-08 15:17:40
613
原创 每日一个网络知识点:物理层有线传输介质
有线传输介质是指在网络设备之间提供物理连接的实体媒介,负责承载和传输电信号或光信号。它们是网络通信的"血管系统"。
2025-10-08 15:12:25
1154
1
【计算机网络】分层体系结构详解:核心思想、OSI与TCP/IP模型及数据封装解封装过程
2025-07-26
【Linux系统】从历史到核心技术:Linux发展脉络、基础概念与关键技术解析了Linux操作系统的
2025-07-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅