
c编程练习
流水石板路
物联网 机器人 自动控制 嵌入式
展开
-
要多写多练啊!
工作前以为有很多写代码的机会,写都写不完的那种。工作后才发现做的最多的工作是解bug、搭环境、验证功能。写代码、调代码的时间占比几乎为0。突然想到了找工作前在牛客刷题的日子,登录了牛客,打开第一道题目。题目难度:简单。但是我却一脸懵逼,连链表建立、遍历等基本操作都不会了,更不要说题目要求链表转置。。。翻了下c基础书,才想起链表基本操作。自己动手练习了下,才算能做题,可是不能完全通过。。。最后看了答案,才知道自己的解题思路是多么幼稚。。。多刷点题目吧,不然脑子都生锈了。...原创 2021-06-24 00:10:56 · 88 阅读 · 0 评论 -
控制打印字符串长度--c
参考:printf(”%*.*s“) 动态控制宽度的方法_printf控制宽度_w332530494的博客-优快云博客C语言%s格式符的使用! - 简书https://www.cnblogs.com/ai616818/archive/2012/05/31/2528472.html#:~:text=%E5%8E%9F%E6%A0%B7%E8%BE%93%E5%87%BA%E5%AD%97%E7%AC%A6%E4%B8%B2%3A%20printf%28%22%25s%22%2C%20str%29%3B%20转载 2023-09-18 16:30:00 · 300 阅读 · 0 评论 -
在flash上对地址寻址怎么看?
前言对于地址寻址范围给定,初始地址给定,如何求结束地址的问题一直感觉很模糊,写个帖子记录下问:如果有个64M的flash,flash的起始地址对应地址总线的0x3000 0000(32位地址总线),问该flash的结束地址时多少?分析地址总线: 32bitflash起始地址: 0x3000 0000flash大小:64M对于0x3000 0000 -0x3000 0001存放1 byte数据。我们一共64M = 64 * 1024 = 65536 kb = 655原创 2022-01-21 22:19:58 · 1350 阅读 · 1 评论 -
strstr报段错误问题记录
使用下面语句,运行程序报段错误:begin = strstr(aucBuf, ':');看了代码好久没发现问题,直到祭出dbg单步调试才找到问题所在行。看了好久才发现,strstr中的第二个入参为字符串,不是字符,改成下面的就可以了:begin = strstr(aucBuf, ":");...原创 2021-12-30 10:20:22 · 689 阅读 · 0 评论 -
fcnt select用法总结
fcnt : file controlfcnt用于控制文件句柄的操作select用于非阻塞监控文件句柄基本操作:/* 0- 定义读写句柄集合 */fd_set rd_set, wr_set;/* 1- 获取文件句柄 */fd_rd = fopen()fd_wr = fopen()/* 2- 获取句柄参数 */flags_rd = fcntl(fd_rd, F_GETFL, 0)flags_wr = fcntl(fd_wr, F_GETFL, 0)/* 3- 设置取原创 2021-12-16 11:28:59 · 474 阅读 · 0 评论 -
链表升序合并
题目:链表升序合并解题思路1:常规思路。由于两个链表都是升序的,可以将一个链表中元素循环插入另一个链表。由于链表已经是升序的,所以插入后可以返回插入点,减少遍历。思路2:牛客网普遍思路。由于两个链表均为升序排列好的,只需比较两个链表头,小者顺序加入到新链表中。可采用递归和循环方式。同一道题目有不同思路,果然还是要多做下题目,感受下不同思路。...原创 2021-06-24 23:43:34 · 353 阅读 · 3 评论 -
单链表转置--c
牛客网:NC78 反转链表尝试了几种不同思路:目前最优的方案:/** * struct ListNode { * int val; * struct ListNode *next; * }; *//** * * @param pHead ListNode类 * @return ListNode类 */struct ListNode* ReverseList(struct ListNode* pHead ) { // write code here原创 2021-06-23 23:54:45 · 922 阅读 · 0 评论 -
链表基本操作--c
创建--打印--释放#include<stdio.h>#include<stdlib.h> //exit()#include<string.h> //字符串头文件struct list{ int val; struct list* next;};struct list* creat_list(int size);int print_list(struct list* head);int free_list(struct list*原创 2021-06-23 22:34:53 · 106 阅读 · 0 评论