- 博客(10)
- 收藏
- 关注
原创 C标准库格式化输入输出函数详解
永远检查返回值!这是最重要的规则。返回值告诉你成功了多少,是错误处理的基础。限制输入宽度:在使用%s、%[ ]时,必须使用域宽来防止缓冲区溢出。例如char buf[100];理解%c的行为:%c会读取输入流中的下一个字符,包括空格、换行符。如果不想读取空白字符,可以在格式字符串中显式跳过,如scanf(" %c", &c);(注意%c前的空格)。清空输入缓冲区:当输入格式错误时,错误的数据会留在输入缓冲区中,影响下一次读取。通常需要用while(getchar()!= '\n');来清空。
2025-09-29 23:58:22
783
原创 字节序问题
注意:字节序转换仅在字节的层次转换顺序。如果是长整型,就是四个字节完全翻转,类似1234变成4321。主机上采用的字节序称作主机字节序,不同主机系统千差万别,字节序并不统一,分为大端字节序与小端字节序。函数会先识别系统的字节序,如果跟网络字节序一致,那么就不需要进行转换。eg:一段内存逻辑地址,0x0000~0xFFFF,0x0000是低地址,0xFFFF就是高地址。除了上述四个函数,也可以自己编写函数进行字节序检测与转换。举例,对于一个按照16进制表示的32位整数(占4个字节):0x12345678,
2025-09-21 02:09:46
460
原创 sockaddr_in结构体中成员变量sin_addr的赋值方法
假设定义一个sockaddr_in变量server_addr,在 C/C++ 中,为。由于这些常量都是主机字节序,因此在有些场合使用时要转换为网络字节序。sockaddr_in结构体是IPv4网络协议使用的套接字数据结构。其中sin_addr是其中的一个结构体变量,这个结构体变量定义为。INADDR_BROADCAST值相同,因此理论上相互替换,编译出的程序完全一样,但是从语义的角度,起别名便于程序理解。表示函数调用失败或无效地址,函数返回值检查时使用。,返回 0 表示无效地址,返回 -1 表示错误。
2025-09-18 01:23:40
387
原创 GDB调试
给程序设置参数,显示设置的参数,程序启动调试的命令如下。可以看到设置好参数后,直接输入run程序就执行了,按照设置的参数执行。注意,退出调试后再进入则原先设置的参数无效。作用是在可执行文件中加入源代码的信息,比如可执行文件中第几条机器指令对应源代码的第几行,但并不是把整个源文件嵌入到可执行文件中,所以在。$list/l n #list + 行号,列出指定行代码。$list/l 函数 #list + 函数名,列出指定函数的代码。”,就进入到了调试界面。,退出调试后设置失效。
2025-08-12 01:06:07
291
原创 linux中如何压缩数据以及归档数据
● tar -xvf test.tar.gz -C /home #将test.tar.gz解压到/home目录下,并且文件夹名称默认是test。(似乎不需要加z选项?注意,这里的压缩数据仅指的是将一个文件进行压缩,压缩后数据量会变小;● tar -czvf test.tar.gz test #将test文件夹打包并压缩为test.tar.gz文件。tar -xvf test.tar效果,首先将test文件夹以及test2文件夹移除,有。的内容(书上写的是gzcat,但是实际没有这个,反而是zcat符合)。
2025-08-11 21:59:45
408
原创 旅行的方法
旅行的过程会出现各种意外,也许某地此路不通,也许发现了一个更好的景色而逗留,也许时间安排出现问题不得不提前返航,未知正是旅行的神秘之处。在多年的旅行之后,我总结出了一套旅行的方法,也许并不适合所有人,但是分享给大家以供参考。按照我的理解,无论是以公共交通为主的旅游,还是骑行,抑或徒步的出行,对我而言都是属于旅行的一部分,所不同的是借助的手段即交通工具不同而已,不同的交通工具适合不同距离的旅行。路上可能遇到各种意外,下雨,没抢到票,爆胎等等,重要的是保持一个乐观的心态,遇到问题解决问题即可。
2025-06-28 18:25:33
245
转载 C语言中结构体的位域(bit-fields)
C语言中结构体的位域(bit-fields)转自:http://blog.sina.com.cn/s/blog_6240b5980100tcba.html有些信息在存储时,并不需要占用一个完整的字节,而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1两种状态,用一位二进位即可。为了节省存储空间,并使处理简便,C语言又提供了一种数据结构,称为“位域”或“位段”。所谓“...
2019-06-12 13:53:32
2640
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1