![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c学习
文章平均质量分 50
鸭鸭打瞌睡
这个作者很懒,什么都没留下…
展开
-
编译过程杂记
static如果一个函数只能被本文件中其他函数所调用,它称为内部函数。在定义内部函数时,在函数名和函数类型的前面加 static内部函数又称静态函数。使用内部函数,可以使函数的作用域只局限于所在文件。即使在不同的文件中有同名的内部函数,也互不干扰。提高了程序的可靠性。外部函数如果在定义函数时,在函数的首部的最左端加关键字 extern,则此函数是外部函数,可供其它文件调用。C 语言规定,如果在定义函数时省略 extern,则默认为外部函数。原创 2023-05-21 17:16:23 · 455 阅读 · 0 评论 -
c 工程开发字符串 api模型
描述一char *p = “abcd1111abcd2222abcd333” 请找出abcd出现的次数要求1 :自定义一个接口(函数),并实现功能要求2 :编写测试用例api分析实现一个函数 --> get_count()参数分析 a.需要查找的子串 b.待查找的子串 c.输出的结果a.需要查找的子串 --> 需要查找的子串整个存放的内存空间 --> 需要子串的首地址 = char *strb.待查找的子串 -> 待查找的子串整个存放的内存空间 --&g原创 2021-11-09 15:08:28 · 106 阅读 · 0 评论 -
嵌入式c自我修养
开始记录一些在内核里看见的奇怪语法,慢慢认清,学会他们的写法宏定义写一个比较大小的宏定义差劲#define MAX(x,y) x > y ? x : y会因为传入的宏带有其他符号(考虑优先级)而改变我们的想法比如 : printf(“max=%d”,MAX(1!=1,1!=2));中等#define MAX(x,y) (x) > (y) ? (x) : (y)括号外的符号也会有类似的优先级比如 : printf(“max=%d”,MAX(1!=1,1!=2));良好#原创 2021-09-02 00:08:37 · 692 阅读 · 0 评论 -
c语言 队列---->链表实现
队列大致我们一般用链表实现队列,而栈一般用顺序表实现一个头节点,一个尾节点队列实现定义一个队列队列有很多个节点,相当于链表里的节点,每个节点有指向下一个节点的指针//定义每一个数据的节点typedef struct my_node{ char data; struct my_node *next;}my_node,*p_node;//定义队列typedef struct{ p_node front,rear; //队头,尾指针}link_queue;原创 2021-05-13 11:11:14 · 340 阅读 · 0 评论 -
c语言 栈-->数组实现
顺序栈下面的代码里,头指top指针里面也是存放数据的实现定义一个栈typedef struct{ char *base; char *top; int stack_size;}my_stack,*p_my_stack;对栈初始化传入一个栈的指针,设置栈初始大小为100void init_stack(p_my_stack p_stack){ p_stack->base = (char *)malloc(100*sizeof(char));//初始栈的原创 2021-05-11 12:00:26 · 209 阅读 · 0 评论 -
二维数组,二级指针,指针数组,数组指针傻傻分不清
用的是64位的编译器,所以一个指针8字节举例子二维数组 == 数组指针int a[2][3] = { {2,3,6},{20,40,60}} ; //定义了行为2,列为3的数组,sizeof(a) = 4*6 =24int(*b)[5]; //数组指针,一个指向5个数组的指针//因为[]优先级大于* 所以要加括号表明这是一个 int指针...原创 2021-04-19 09:41:52 · 120 阅读 · 0 评论