摘要:类型 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个字
阅读全文
摘要:c语言中的sizeof()是如何分辨数组名和指针的? - 醉卧沙场的回答 - 知乎 https://www.zhihu.com/question/464844221/answer/1940453834
阅读全文
摘要:服务端将接受客户端发送的数据并将其转换成大写形式,然后再发送给客户端,客户端将发送一个字符串给服务器,并显示来自服务器的响应内容。 服务器 点击查看代码 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/
阅读全文
摘要:以下是使用C语言写的一段代码,实现两个线程共享一个套接字,其中一个线程使用sendmsg函数不断发送消息到该套接字,另一个线程使用recvmsg函数不断接收该套接字的消息,并打印出来的功能 点击查看代码 #include <stdio.h> #include <stdlib.h> #include
阅读全文
摘要:隐藏在C语言里面的奇技淫巧 对齐到最近的8的倍数。 这个表达式 (size + 7) & ~(7) 是一个常见的位操作技巧,用于将 size 向上对齐到最近的8的倍数。 ~(7):首先,7 的二进制表示是 0111。按位取反 ~ 操作会将所有的1变为0,所有的0变为1,所以 ~(7) 就是 1...
阅读全文
摘要:https://mp.weixin.qq.com/s/SOA2R9jenV-qFcAF1Tif8g
阅读全文
摘要:C语言中,静态函数和非静态函数的区别主要体现在以下方面: 可见性:静态函数只能在当前文件内使用,不能被其他文件调用,而非静态函数可以被当前文件以外的其他文件调用,具有全局可见性。 生命周期:静态函数在程序运行期间一直存在,不会被释放,而非静态函数则是在被调用时动态地创建并在函数返回时被释放,拥有较短
阅读全文
摘要:#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
阅读全文
摘要:非法的指针 指针表达式 数组和指针 指向数组的指针 指针数组 指针和数组的总结 字符串 指针的高级声明(花里胡哨) 函数指针 函数指针 - Sunsin - 博客园 (cnblogs.com) #include <stdio.h> int main() { int* a ; *a = 12; ret
阅读全文
摘要:if (filter ->next ) filter ->next->pre = filter ->pre; else list->tail = filter ->pre; if (filter ->pre) filter->pre->next = filter ->next; else list
阅读全文
摘要:p是prefix类型变量的地址。即prefix *类型 printf (" %P", p);打印IPV4地址, printf (" %O", p);打印IPV4地址, printf (" %p", p);打印IPV6地址, printf (" %p", p);打印IPV6地址,
阅读全文
摘要:1 值传递 下面看一个列子,student结构体中包含该学生的各种信息,我们在change函数中对其进行部分修改,再在主函数中输出其结果 #include<stdio.h> #include<string.h> #define format "%d\n%s\n%f\n%f\n%f\n" struct
阅读全文
摘要:gdb @ 可以打印地址后面指定长度的字节 (gdb) p * attr2->aspath->data
5=2′\002′(gdb)pattr2−>aspath−>data3 = (u_int8_t *) 0x160fa48 "\002\002" (gdb) p * attr2->
阅读全文