c语言基础
文章平均质量分 90
Ho_pe
这个作者很懒,什么都没留下…
展开
-
PHY寄存器解读
以太网PHY寄存器分析 11、以太网PHY标准寄存器分析 21.1 Control Register 21.2 Status register 51.3 PHY Identifier Register 81.4 Auto-Negotiation Advertisement Register 81.5 Auto-Negotiation Link Partner Base Page Ability Register 91.6 Auto-Negotiation Expan原创 2022-12-09 14:38:13 · 4529 阅读 · 0 评论 -
字符串二维数组malloc作为函数入参
该方式是可以直接使用的,主要用于字符串数组作为形参传入函数时使用:void csdfa(char (*aaa)[10]){ rt_strncpy(aaa[0],"nv_sfme",rt_strlen("nv_sfme"));}int eeeeer(void) { int i,j; int row = 4,col = 10; //申请一个 4行 5列的二维数组 char (*ar)[col] = (char(*)[col])malloc(sizeof原创 2020-09-04 15:23:37 · 878 阅读 · 0 评论 -
C语言字符串操作大全
1)字符串操作strcpy(p, p1) 复制字符串strncpy(p, p1, n) 复制指定长度字符串strcat(p, p1) 附加字符串strncat(p, p1, n) 附加指定长度字符串strlen§ 取字符串长度strcmp(p, p1) 比较字符串strcasecmp忽略大小写比较字符串strncmp(p, p1, n) 比较指定长度字符串strchr(p, c) 在字符串中查找指定字符strrchr(p, c) 在字符串中反向查找strstr(p, p1) 查找字符串转载 2020-09-03 10:46:00 · 359 阅读 · 0 评论 -
cJSON方法详解
一、JSON概述1.1 JSON介绍JSON:JavaScript对象表示法(JavaScript Object Notation)。是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似C语音家族的习惯(包括C、C++、C#、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。JSON解析器和JSON库支持许多不同转载 2020-09-03 09:21:37 · 2841 阅读 · 0 评论 -
CJSON小实例
本文属于个人记录,仅够cjson使用。cjson创建 cJSON * genz = cJSON_CreateObject(); cJSON * usr = cJSON_CreateObject(); cJSON_AddStringToObject(usr,"name","fengxin"); cJSON_AddStringToObject(usr,"passwd","...原创 2020-05-07 11:00:46 · 2826 阅读 · 0 评论 -
(*((void (*)(void))(*(unsigned long *)0x2c)))(); 是什么意思?
(((void ()(void))((unsigned long )0x2c)))(); 是什么意思?在8962的boot_demo1中 (((void ()(void))(*(unsigned long *)0x2c)))(); 是什么意思?是把程序引导到地址为0X2C的位置?这个语句会执行位于bootloader的SVC(软中断)异常服务例程,还是分解一下吧:(*(unsigned l...转载 2020-03-17 13:40:09 · 3189 阅读 · 0 评论 -
双向链表和单向链表
概念:双向链表也叫双链表,是链表的一种,是在操作系统中常用的数据结构,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱,其头指针 head 是唯一确定的。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点,这种数据结构形式使得双向链表在查找时更加方便,特别是大量数据的遍历。由于双向链表具有对称性,能方便地完成各种插入、删除等操作,但需要注意前后方向的操作理...原创 2020-02-04 12:59:16 · 3457 阅读 · 0 评论 -
标准的I/O缓冲:全缓冲,行缓冲,无缓冲
3种缓冲机制。1、全缓冲。全缓冲指的是系统在填满标准IO缓冲区之后才进行实际的IO操作;注意,对于驻留在磁盘上的文件来说通常是由标准IO库实施全缓冲。调用fflush函数冲洗一个流。冲洗意味着将缓冲区的内容写到磁盘上。2、行缓冲。在这种情况下,标准IO在输入和输出中遇到换行符时执行IO操作;注意,当流涉及终端的时候,通常使用的是行缓冲。3、无缓冲。无缓冲指的是标准IO库不对字符进...原创 2020-01-14 09:26:01 · 566 阅读 · 0 评论 -
c语言之函数指针及指针函数
用最少的字来阐述函数指针与指针函数之间的本质区别及用法。使用过程中,万变不离其宗,只会在返回的类型,参数类型上做文章,本质不便。概念:指针函数本质是一个函数,只是函数的返回值是一个指针。函数指针本质是一个指针变量,指向函数的指针包含了函数的入口地址。形式指针函数:函数返回值类型 *函数名(参数)函数指针:函数返回值类型(*函数名)(参数)理解:普通的函数主要分为有返回值和无返...原创 2018-11-14 17:41:04 · 3038 阅读 · 0 评论 -
聊聊串级PID的那些道道
一:概念普及:1)单级pid控制:PID控制器(比例-积分-微分控制器)是一个在工业控制应用中常见的反馈回路部件,由比例单元P、积分单元I和微分单元D组成。PID控制的基础是比例控制;积分控制可消除稳态误差,但可能增加超调;微分控制可加快大惯性系统响应速度以及减弱超调趋势。2)串级pid控制:就是采用两个控制器串联工作,外环控制器的输出作为内环控制器的设定值,由内环控制器的输出去操纵控制阀,从而对...原创 2018-05-03 20:43:42 · 3490 阅读 · 1 评论 -
聊聊C语言那些堆和栈的道道
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两转载 2017-09-13 19:51:34 · 410 阅读 · 0 评论 -
聊聊c语言结构体那些道道
在c语言的编程中,结构体的使用频率是非常高的,那到底结构体是什么?表现形式是什么?为什么要用结构体?怎么用?原创 2017-03-22 18:16:38 · 3512 阅读 · 0 评论 -
聊聊c语言指针那些道道
学习c语言必学的就是学习指针的用法,能不能够用好指针完全可以代表你的c语言能力牛不牛,对于初学者来说,指针理解起来会有一定的难度,但是看得多了用的时间长了就会搞懂了。本文主要是介绍了指针的几个常用方向,如数组、回调函数。原创 2017-03-28 18:25:56 · 3461 阅读 · 0 评论 -
结构体指针示例解析
c语言之结构体指针,本文主要展示了一下结构体指针的用法及返回值的用法,并未对结构体、指针、返回值单独的作过多的介绍。原创 2017-03-21 14:40:44 · 3718 阅读 · 0 评论 -
聊聊c语言静态变量常量那些道道
c语言中常用到的静态局部变量的声明关键字static和常量声明关键字const的简单用法。原创 2017-03-28 19:02:56 · 4482 阅读 · 0 评论