随笔分类 -  C语言

不同存储类型所占空间
摘要:类型 16位平台 32位平台 64位平台 char 1个字节 1个字节 1个字节 short 2个字节 2个字节 2个字节 int 2个字节 4个字节 4个字节 unsigned int 2个字节 4个字节 4个字节 float 4个字节 4个字节 4个字节 double 8个字节 8个字节 8个字 阅读全文
posted @ 2024-06-12 14:55 开源侠 阅读(20) 评论(0) 推荐(0) 编辑
好问题,好答案
摘要:c语言中的sizeof()是如何分辨数组名和指针的? - 醉卧沙场的回答 - 知乎 https://www.zhihu.com/question/464844221/answer/1940453834 阅读全文
posted @ 2024-01-31 14:05 开源侠 阅读(4) 评论(0) 推荐(0) 编辑
C语言实现TCP CS模型代码,客户端服务器
摘要:服务端将接受客户端发送的数据并将其转换成大写形式,然后再发送给客户端,客户端将发送一个字符串给服务器,并显示来自服务器的响应内容。 服务器 点击查看代码 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/ 阅读全文
posted @ 2023-12-19 16:31 开源侠 阅读(45) 评论(0) 推荐(0) 编辑
两个线程共享一个套接字,其中一个线程使用sendmsg函数不断发送消息到该套接字,另一个线程使用recvmsg函数不断接收该套接字的消息,并打印出来的功能
摘要:以下是使用C语言写的一段代码,实现两个线程共享一个套接字,其中一个线程使用sendmsg函数不断发送消息到该套接字,另一个线程使用recvmsg函数不断接收该套接字的消息,并打印出来的功能 点击查看代码 #include <stdio.h> #include <stdlib.h> #include 阅读全文
posted @ 2023-12-15 10:52 开源侠 阅读(58) 评论(0) 推荐(0) 编辑
隐藏在C语言里面的奇技淫巧
摘要:隐藏在C语言里面的奇技淫巧 对齐到最近的8的倍数。 这个表达式 (size + 7) & ~(7) 是一个常见的位操作技巧,用于将 size 向上对齐到最近的8的倍数。 ~(7):首先,7 的二进制表示是 0111。按位取反 ~ 操作会将所有的1变为0,所有的0变为1,所以 ~(7) 就是 1... 阅读全文
posted @ 2023-12-13 16:46 开源侠 阅读(22) 评论(0) 推荐(0) 编辑
用 C 语言实现有限状态机 FSM--基于表驱动
摘要:https://mp.weixin.qq.com/s/SOA2R9jenV-qFcAF1Tif8g 阅读全文
posted @ 2023-11-30 20:24 开源侠 阅读(66) 评论(0) 推荐(0) 编辑
C语言中静态函数和非静态函数的区别
摘要:C语言中,静态函数和非静态函数的区别主要体现在以下方面: 可见性:静态函数只能在当前文件内使用,不能被其他文件调用,而非静态函数可以被当前文件以外的其他文件调用,具有全局可见性。 生命周期:静态函数在程序运行期间一直存在,不会被释放,而非静态函数则是在被调用时动态地创建并在函数返回时被释放,拥有较短 阅读全文
posted @ 2023-11-02 14:15 开源侠 阅读(1184) 评论(0) 推荐(0) 编辑
字节对齐
摘要:#include <stdio.h> struct Example { int a; // 4 bytes char b[32]; // 32 bytes double c; // 8 bytes }; int main() { struct Example ex; printf("Size of 阅读全文
posted @ 2023-09-26 14:50 开源侠 阅读(7) 评论(0) 推荐(0) 编辑
C语言易混淆,易错知识点
摘要:本文内容来源于《C和指针》 阅读全文
posted @ 2023-09-25 16:40 开源侠 阅读(8) 评论(0) 推荐(0) 编辑
C语言-复杂的指针关系
摘要:非法的指针 指针表达式 数组和指针 指向数组的指针 指针数组 指针和数组的总结 字符串 指针的高级声明(花里胡哨) 函数指针 函数指针 - Sunsin - 博客园 (cnblogs.com) #include <stdio.h> int main() { int* a ; *a = 12; ret 阅读全文
posted @ 2023-09-21 16:18 开源侠 阅读(6) 评论(0) 推荐(0) 编辑
双向链表的删除操作
摘要:if (filter ->next ) filter ->next->pre = filter ->pre; else list->tail = filter ->pre; if (filter ->pre) filter->pre->next = filter ->next; else list 阅读全文
posted @ 2023-08-08 19:59 开源侠 阅读(11) 评论(0) 推荐(0) 编辑
prefix结构体打印IPV4,IPV6网络地址
摘要:p是prefix类型变量的地址。即prefix *类型 printf (" %P", p);打印IPV4地址, printf (" %O", p);打印IPV4地址, printf (" %p", p);打印IPV6地址, printf (" %p", p);打印IPV6地址, 阅读全文
posted @ 2023-07-28 16:50 开源侠 阅读(54) 评论(0) 推荐(0) 编辑
C语言指针的常见问题
摘要:1 值传递 下面看一个列子,student结构体中包含该学生的各种信息,我们在change函数中对其进行部分修改,再在主函数中输出其结果 #include<stdio.h> #include<string.h> #define format "%d\n%s\n%f\n%f\n%f\n" struct 阅读全文
posted @ 2023-07-24 13:56 开源侠 阅读(19) 评论(0) 推荐(0) 编辑
gdb
摘要:gdb @ 可以打印地址后面指定长度的字节 (gdb) p * attr2->aspath->data 5=2\002(gdb)pattr2>aspath>data3 = (u_int8_t *) 0x160fa48 "\002\002" (gdb) p * attr2-> 阅读全文
posted @ 2023-07-21 17:03 开源侠 阅读(10) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示