![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
吾爱吃西红柿
这个作者很懒,什么都没留下…
展开
-
【字符串解析】IP地址字段解析提取函数接口
在嵌入式业务逻辑中,我们有时需要从配置文件、串口或者服务端接收的消息数据中进行字符串解析,来提取需要的目标字符串字段。通常我们会调用字符串处理相关的函数,例如strstr,strchr,sscanf等,再结合指针偏移来提取目标字段。实现这种方式的前提是,我们需要提前知道字符串固定的格式内容,如果待解析的字符串内容或者格式偏差的情况,那么我们编写好的字符串解析处理程序就不太适用了。原创 2024-06-18 11:39:14 · 414 阅读 · 0 评论 -
【字符串处理函数】sprintf与snprintf
sprintf与snprintf字符串格式化处理函数原创 2022-08-17 16:49:03 · 4347 阅读 · 0 评论 -
不定长数组动态初始化
int array[]; //定义不定长一维数组int array_num; //记录动态赋值的次数,以此作为数组长度void init_array(int *array, int *array_num){ int i = 0; printf("Please input:"); do { scanf("%d", &array[i++]); (*array_num)++原创 2022-04-24 17:45:51 · 385 阅读 · 0 评论 -
通过按位与和按位或操作
通过按位与和按位或操作来拉高或者拉低某位的电平,用这两种运算可以让其他为的电平状态不受影响。1.按位或 | 操作,可以实现拉高电平 0 -> 1,即对应位至少有一者为1运算结果为1,都为0才为0将需拉高电平的低电平位0与1进行按位或操作,0 | 1 = 1即可拉高电平。如果原操作为也有为0的,为保证其电平不改变,其对应位应与0按位或,0 | 0 = 0,从而保持了原来的低电平状态不变。例如:0001011 将第3位(从右往左数)的低电平拉高0001011 | 0000100 = 0000原创 2020-12-20 20:44:24 · 1149 阅读 · 0 评论 -
已知n个元素依次入栈,判断元素出栈的次序或者出栈的结果
需要着重声明一点,在某个序列(如12345)入栈的时候可以是一次性全部入栈再出栈,也可以是在部分元素入栈时,立刻出栈比如序列: 1,2,3,4,5出栈的结果之一:3,2,1,5,4 属于后者,即部分元素入栈再立刻依次出栈。出栈的结果之二:1,2,3,4,5也属于后者,即每个元素入栈之后立刻出栈。结果一说明:1,2,3连续进栈,3入栈之后停止进栈,开始出栈:3,2,1,出栈完毕。剩下的4,5依次连续进栈后,再连续出栈5,4。综合出栈的结果为3,2,1,5,4。结果二说明:1进栈后立刻出栈,2进栈原创 2020-10-23 22:17:59 · 1918 阅读 · 0 评论 -
自定义类似于word的查找替换功能程序
#include<stdio.h>#include<stdlib.h>#include<stdio.h>#include<string.h>int main(){ int i; char read_buf[3003]; int cont=0; char *str=NULL; int length; FILE *fd=fopen("C:\\Users\\Administrator\\Desktop\\xiugai.txt","r原创 2020-09-29 09:39:29 · 307 阅读 · 0 评论 -
自定义一个可以接收空格的字符串的函数
在linux系统下使用C语言开发时,在特定场景之下需要用到字符串输入语句,并且有时会输入空格。使用通常使用的字符串输入函数则会出现一些问题。(1)使用scanf不能接收空格(2)使用gets又会出现警告 ,又内存溢出的风险,(3)使用fgets时,亲测,虽然可以接收带有空格的字符串命令,但是其内容却带有换行符,无法正确识别原来的字符串命令void mygets(char get_str[128])//形参传入一个字符型的数组,或者一个字符串变量{ int i; .原创 2020-09-29 09:14:46 · 1643 阅读 · 0 评论