自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 【c语言网络编程】inet_pton函数

:通过指针 `p` 访问 `data_ip` 的每个字节,并打印出来。`:调用 `inet_pton` 函数,将点分十进制的 IP 地址转换为网络字节顺序的 32 位无符号整数,并将结果存储在 `data_ip` 中。`:定义一个无符号字符型指针 `p`,指向 `data_ip` 的起始地址,以便访问 `data_ip` 的每个字节。2. `#include <arpa/inet.h>`:包含了一些网络编程相关的函数声明,比如 `inet_pton`,用于 IP 地址的转换。

2024-05-22 23:20:22 1200

原创 【c语言】判断计算机的字节序是大端还是小端

2. `unsigned char *p = (unsigned char *)#`:定义一个无符号字符型指针 `p`,并将 `num` 的地址强制转换为无符号字符型指针,这样 `p` 指向 `num` 的起始地址,且可以通过 `p` 访问 `num` 的每个字节。如果 `*p` 等于 `0x01`,说明存储在 `num` 中的最低有效字节是 `0x01`,这表明计算机是大端格式。`:定义一个无符号整型变量 `num`,并将其赋值为十六进制数 `0x01020304`,这个值占四个字节。

2024-05-22 10:30:00 480

原创 【C语言】char,short char,long char分别是多少字节,多少位,多少bit

在 C 语言中,`char`、`short`、`int`、`long` 这些数据类型的大小是平台相关的,它们的大小取决于编译器和操作系统的实现。在计算机术语中,"16位"通常指的是数据宽度,即一个数据元素在内存中占据的位数。4. `long` 类型:通常被定义为四个字节(32 比特)或者更大,即 4 字节或更大。3. `int` 类型:通常被定义为四个字节(32 比特)或者更大,即 4 字节或更大。2. `short` 类型:通常被定义为两个字节(16 比特),即 2 字节。

2024-05-21 06:00:00 848

原创 【C语言】16进制输出%x和%0x的区别

后面跟着一个数字,表示以十六进制形式输出整数,并且指定输出的宽度为指定的数字。如果输出的十六进制数位数不足指定的宽度,会在前面用零来填充。:用于以十六进制形式输出整数,不带任何宽度或填充零的设置。输出的十六进制数可能不足两位,不足时不会在前面填充零。被格式化为宽度为 4,不足 4 位时在前面用零填充,因此输出为。的区别在于是否指定了输出的宽度和是否在不足宽度时填充零。在输出宽度和填充零方面的不同效果。举个例子,假设有一个整数。而在第二个例子中,使用。在第一个例子中,使用。

2024-05-20 12:30:00 890

原创 【C语言】sspritnf(组包)和sscanf(解包)简易理解

sscanf(源数据,"%d%c%s",&目标1,&目标2,&目标3)sprintf:组包命令,将最后的值,按照中间的格式,组到目标地址中。sscanf:解包命令:将原数据中的内容,按照中间格式,解包到目标中。sprintf(&目标,"%d+%d=%s",1,2,65)

2024-04-22 23:15:08 116

原创 LINUX【网络编程】UDP程序recvfrom接收数据

UDP编程

2024-04-14 11:31:28 987 1

原创 LINUX【网络编程】UDP程序绑定发送主机IP及端口

include <sys/socket.h> //socket函数#include <netinet/in.h> //struct sockaddr_in结构体#include <string.h> //memset strlen函数#include <arpa/inet.h> //inpton函数#include <unistd.h> //close函数//bind函数// 创建套接字,对应头文件(sys/socket.h)

2024-04-14 01:55:08 1192 2

原创 LINUX[网络编程]

#include <stdio.h>#include <sys/socket.h> //socket函数#include <unistd.h> //close函数#include <string.h> //memset strlen函数#include <netinet/in.h> //struct sockaddr_in结构体#include <arpa/inet.h> //inet_pton函数int main(int argc, char const *argv[]){ //

2024-04-13 08:30:00 705

原创 【C语言】把歌词里的播放时间跟歌词提取出来

给到一个字符串,里面包含了时间(唱该歌词的时间以及该歌词)例如“[02:16.33][04:11.44][05:11.44]我想大声宣布对你依依不舍”,如何把两者都给打印出来呢?下面给出解释。

2023-11-30 03:45:00 816

原创 【C语言】文件操作(随机读写)

将b.txt文件内容全部给读出来。

2023-11-28 03:00:00 766 1

原创 【C语言】文件操作

这两天都忙,水一下,反正没人看…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

2023-11-27 03:30:00 411

原创 【C语言】链表排序(纯个人总结)不是网上那种理论派讲了半天也听不懂的

说实话,这个排序花了我很长时间去分析,也没人去教,确实比较难搞,主要是理论大家都懂,实际呢,讲细节,原理又模模糊糊的,这次我把我参悟的给发出来。

2023-11-25 00:15:00 1222

原创 【C语言】插入学生信息链表,并且自动排序(上强度)

此次属于是上强度了,键盘一次性输入n个学生信息:学号,姓名,分数。让它从小到大排序后输出。

2023-11-24 00:30:00 1761 1

原创 【C语言】使用选择法排列数值数组

键盘输入10个int值,把它从大到小来排序。

2023-11-23 04:00:00 239 1

原创 【C语言】使用冒泡法排序数组

键盘输入10个int值,把它从大到小来排序。

2023-11-22 02:30:00 297 1

原创 【C语言】比较字符串的大小

不使用函数,比较字符串的大小。

2023-11-21 03:30:00 294

原创 【C语言】字符串插入另一个字符串中

不使用函数,让一个字符串插入到另外一个字符串里。

2023-11-20 03:45:00 2647 1

原创 【c语言】结构体指针的拓展

结构体 指针数组在堆区 每个元素指向堆区 元素的指针成员指向堆区。

2023-11-19 03:00:00 212 1

原创 【C语言】结构体开辟在堆区

设计一个结构体指针变量,每个变量保存的是学号(整数),姓名(字符串),分数(浮点数)

2023-11-18 01:09:30 487 1

原创 【C语言】做一个简单的计算器计算

x : y);// 字符指针数组// 函数指针数组while (1)printf("请输入 add 100 200:");int i = 0;for (i = 0;i < n;

2023-11-17 00:11:52 454

原创 【C语言】使用sscanf解包函数来提取字符串,解析时间对应歌词

这是一个歌词解析项目,主要是给了一个文件有字符串,设计一个函数,按照字符串给出的时间跟哥词来按照时间输出歌词,代码如下。

2023-11-16 00:21:31 338 1

原创 【C语言】使用函数strtok切割指定字符串,并挨个保存

总结来说,这段代码的目的是将原始字符串按照逗号进行切割,并将切割得到的子字符串存储在字符指针数组中。// msg_src表示待切割字符串的首地址,此处则是一整个字符串。根据代码中的打印语句,// msg_done表示被切割后的字符串,存放的首地址。函数会返回切割后的子字符串的地址,并将该地址赋给。的值会递增,这样就可以将切割得到的子字符串保存在。,这表示切割后的第一个子字符串的地址。的值就是切割得到的子字符串的个数。

2023-11-15 00:56:50 385

原创 【c语言】用strstr函数替换字符串中特定的字符

/ memset是改变从ret地址开始的三个字节的元素,改变为'#'字符串中查找第一次出现的子串 "sex",并将返回的指针赋值给。接下来,使用一个循环来不断查找并替换 "sex" 子串。函数的作用是将指定的内存区域设置为特定的值。字符串中查找下一个 "sex" 子串,并将返回的指针赋值给。表示原来的 "sex" 子串被替换为了 '#' 字符。表示只要找到了 "sex" 子串,就继续执行循环。指向的位置开始的三个字节的元素改为 '#' 字符。,即没有找到更多的 "sex" 子串,循环结束。

2023-11-13 22:49:19 3603

原创 c语言申请一个数组元素的动态内存

我们首先使用 `malloc` 分配了包含 10 个 `int` 元素的内存空间,即 `10 * sizeof(int)`。我们将返回的指针强制类型转换为 `int` 类型的指针,并将其赋给 `p2`。注意,我们使用 `*(p2 + i)` 来访问数组的元素,这是指针算术的一种形式。然后,我们检查了 `p2` 是否为 `NULL`,如果为 `NULL`,说明内存分配失败,我们打印错误信息并返回。接下来,我们使用 `scanf` 函数从用户输入中读取数组的元素,并将其存储在动态分配的数组中。

2023-11-12 23:22:48 164 1

原创 【C语言】键盘输入的10个数值,将其数组逆序

printf("输入%d个int数值:",n);

2023-10-31 00:07:26 1568 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除