
C
心中有爱_眼里有光
一个美好的未来靠双手打造
独学而无友则孤陋而寡闻,不闭门造车,分享让交流更方便让进步更快,
一点一滴的积累汇成大海,
展开
-
简单的链接脚本例子
3.3 简单的链接脚本例子 很多链接脚本都非常简单。 最简单的链接脚本只有一个命令:"SECTIONS"。你用这个命令去描述输出文件的内存的布局。 "SECTIONS"命令是一个非常强大的命令。我们在这会描述一个它的简单的使用。让我们假设你的程序只包含了代码,初始化了的数据,和没有初始化的数据。它们将会分别在'.text','.data'和'.bss'分区内。让我们进一步假设你的输入文件只有一个。 对于这个例子,让我们假设代码会加载在地址 0x10000,然后数据会从地址 ...原创 2020-10-31 12:24:39 · 515 阅读 · 0 评论 -
用malloc的原因
1.malloc是用来进行内存分配,事先不知道大小时2.需要重新分配(增加)内存,前面最好用malloc分配,然后用realloc3.分配较大内存时,因为栈空间有限4.从函数返回结果时,由于生命周期的原因注意malloc比较耗时,效率低。...原创 2020-06-10 09:34:55 · 882 阅读 · 0 评论 -
socket编程学习
1 setsockopt SO_REUSEADDR:端口释放一般2分钟后才能再用,设置后可以立即再用。2setsockopt SO_REUSEPORT:支持多进程多线程重复捆绑同一个端口,提高服务器性能。3 ioctl FIONBIO:设置为非阻塞模式.原创 2020-06-09 14:47:43 · 144 阅读 · 0 评论 -
I/O多路复用技术
1 设置为非阻塞的I/O函数(在读不到数据或者写入缓冲区满时不等待直接返回),然后轮询。O_NONBLOCKfcntl(SockFd, F_SETFL, O_NONBLOCK);2 每一路I/O都用一个线程使用阻塞I/O函数进行读写。2 poll、select。多路fd都没有可读时进入阻塞,不耗cpu,有时再唤醒线程返回,然后去读。...原创 2020-06-09 14:31:50 · 202 阅读 · 0 评论 -
函数使用的安全性
1 线程安全函数多线程编程时由于系统调度,函数执行一半可能调度到别的线程去又调用这个函数执行。如果这个函数里有全局变量,就导致了两个线程的函数的执行结果可能非预期。需加锁,对于全局变量、系统资源等。2 可重入函数...原创 2020-06-09 11:29:48 · 353 阅读 · 0 评论 -
socket server client的读写实现方式
1 读readrecvmsgrecvfrom2 写sendsendtosendmsg原创 2020-06-09 11:26:17 · 333 阅读 · 0 评论 -
shell 命令编码执行的方式
1 popenpfd = popen("cmd","r");fread(buff, 1, MAX, pfd);plcose(pfd);2 execlpid = fork;if(pid = 0){ execl("/bin/ls", "-l", NULL);//去执行新的可执行文件 替换当前进程。只有执行失败才会返回。}3 systemsystem("ls -l");...原创 2020-06-09 11:23:19 · 579 阅读 · 0 评论 -
编程时log的总结202004
测试发现问题后定位的效率很关键,定位有两种方式一是日志打印,二是gdb,其中日志打印效率高,gdb如果没有符号表还要花时间导入,所以日志要能定位出问题当问题发生时。日志的打印在几个地方比较关键,一是模块入口别人给的数据,二是自己内部的关键逻辑判断时数据,三是出口给别的模块的数据,四是错误打印。当出现问题时看error打印有没有,没有看trace日志打印的数据跟一趟看值是否有错误,然后就能找到...原创 2020-04-18 16:57:07 · 459 阅读 · 0 评论 -
free+sprintf出错
free时会出错代码#include <stdio.h>#include <stdlib.h>#include <string.h>int main(){#define DATA_SIZE 200#define MEM_SIZE DATA_SIZE char *str = malloc(MEM_SIZE); if(NULL == str...原创 2019-11-13 19:40:33 · 828 阅读 · 0 评论 -
乒乓球问题 c语言 90分 没通过 知道答案者留下
PID51 / 乒乓球 字符串处理问题原创 2017-08-15 22:59:57 · 668 阅读 · 0 评论 -
明明的随机数问题,亲测通过
明明的随机数问题答案,亲测通过。c编程:输入格式化获取,去重,排列。自己菜鸟水平,欢迎大家改进。原创 2017-08-13 22:56:39 · 802 阅读 · 0 评论