C
文章平均质量分 55
C学习
无敌菌2
物联网开发
展开
-
冒泡/选择排序
冒泡排序,选择排序原创 2023-05-21 17:43:01 · 127 阅读 · 0 评论 -
GD32的时钟和systick学习记录
文章目录简介时钟树主频简介如果把每个外设都看成独立的个体的话,包括GD32本身。那么时钟就相当于心跳。所以说只要想外设工作,必须先使能其时钟源。下面主要介绍下系统主频,RTC,看门狗的时钟源,举三反一,其它的问题就对比看下就行了。时钟树该图是STM32的时钟树,GD32也差不多,只不过经过锁相环倍频器PLL之后得到108M的SYSCLK,而STM32是72M的频率。该图是从左往右看,从图中可以看出主要时钟来源有图标的1,2,3,4,分别是:1:HSI 内部RC振荡器,提供8M时钟频率原创 2021-03-09 13:28:19 · 2612 阅读 · 0 评论 -
指针
数组指针和指针数组每次看到代码中的数组指针或者指针数组都要纠结半天,所以下定决心区分这两个类型。数组指针形容词在前,名词在后所以这是一个指向数组的指针。int (*p)[n]; //优先级()>[]>* 小括号优先级最高,所以这是一个指针,中括号其次所以这是一个数组指针。指针数组形容词在前,名词在后所以这是一个值全是指针类型的数组。定义 int *p[...原创 2019-06-18 22:27:00 · 161 阅读 · 0 评论 -
【C】i++和++i
一直没有仔细看过i++和++i的区别,但是每次遇到都要纠结一会,这次花了几分钟弄懂。##++i和i++的区别1 i ++:int i = 0;while (i < 10) {i ++;}2 ++i:int i = 0;while (i < 10) {++ i;}(1)与(2),经过运算后,i的值都是10。在while和for循环中的 ++i 和...原创 2019-06-12 16:09:00 · 186 阅读 · 0 评论 -
C中双引号和单引号的区别
在我们讨论之前先看一个函数:```#include #include #include int parse_cmd_num(int count,int *dest){ int j = 0; char *p = NULL; char *q = NULL; char sbuf[20] = ": 12,23,34"; p = sbuf; ...原创 2019-07-10 11:32:00 · 371 阅读 · 0 评论 -
windows下编译C/C++代码
今天下载了wolfssl的C 源码,想执行python下的测试代码时,需要编译一些代码,提示下载visualcppbuildtools_full.exe,这是window下编译代码的工具库,下载地址:https://download.microsoft.com/download/5/f/7/5f7acaeb-8363-451f-9425-68a90f98b238/visualcppb...原创 2019-07-03 13:59:00 · 258 阅读 · 0 评论 -
32位数值转化为8位IP地址
#define u8 unsigned char#define u32 unsigned int#define SWAP32(ipValue) ((u32)(((ipValue) & 0xff) << 24) | \ (((ipValue) & 0xff00) << 8) | \ (((ipValue) >>...原创 2020-01-03 13:39:00 · 638 阅读 · 0 评论 -
bin文件转const数组
是否有时候需要将一个bin文件下载到flash中去,但是又不知道以何种方式下载进去。这时候我们可以将bin文件转化为const数组,然后在代码中直接调用就可以了。但是需要怎么转化尼?UE工具可以但是转化起来有点麻烦,那就写个简单的转化函数吧,配合windows编译工具链就可以实现(在我前面的博客有具体的安装运行方法),废话不多说,上代码#include <stdio.h>...原创 2019-12-10 09:58:00 · 466 阅读 · 0 评论 -
结构体组包和指针函数的函数指针
直接上代码#include <stdlib.h>#include <stdio.h>#include <string.h>typedef struct{ char name[10]; int age; int high;}student;//结构体组包void test_pack(){ char...原创 2019-07-12 18:41:00 · 208 阅读 · 0 评论 -
C中拼接和解析字符串函数
**C处理字符串相较于脚本真是特别的麻烦,几乎每个脚本都有字符串处理库。通过正则表达式实现各种字符串的搜索匹配,截取。用起来简直不要太爽,但是对于格式化匹配C语言也有两个函数用来不错。废话不多说,直接上代码。**//sscanf testvoid test_sscanf(){ int int1=0; int int2=0; char str[10]={...原创 2019-07-12 10:51:00 · 217 阅读 · 0 评论 -
C常见问题
1.越界没有给一个变量申请足够大的内存,而copy大于该内存的数据int main(){char a;char *str=&a;strcpy(str,"hello");printf(str);return 0;}2.字节对齐问题typedef struct{ char a; short b; int c;}struct_size_t...原创 2019-07-24 16:29:00 · 265 阅读 · 0 评论