C语言
文章平均质量分 57
主要是C语言的一些遇到的问题的记录
Chillinglu
这里的csdn主要是我自己记录一些做笔记的地方,所以我不会特别注意排版等问题,如果对你也有帮助,点个赞吧,不过我写的都还挺乱的,emmmm互相学习吧
展开
-
函数指针(实例)
函数指针用法,实例如下:#include <stdio.h>#include <stdlib.h>#define FUNC_NUMBER 3int SumTwoNumbers(int x, int y) // 函数1{ return (x + y);}int MultiTwoNumbers(int x, int y) // 函数2{ return (x * y);}int DiviTwoNumbers(int x, int y)原创 2021-03-16 18:39:38 · 787 阅读 · 0 评论 -
C语言常用库函数
sizeofsizeof准确的来讲不是一个库函数,而是一个单目运算符。它的参数可以是数组、指针、类型、对象、函数等,用来计算一块内存的大小。如果是字符串,则用sizeof的时候计算结果是包含结束符‘\0’的,因为结束符也是占用空间的。sizeof是在编译的时候就计算好了缓冲区的长度,因此不能拿来计算和返回动态分配的内存大小。用例如下:#include "stdio.h"#include "string.h"int main(void){ int arr[10] = {0};原创 2021-03-15 02:36:17 · 1364 阅读 · 2 评论 -
strlen和sizeof的区别
记录·一个在计算字符串大小的时候遇到的一个坑。如下代码:int numJewelsInStones(char J[], char S[]){ int cnt = 0; int temp = strlen(S); int temp1 = strlen(J); for (int i = 0; i < strlen(S); i++) { // 使用sizeof(S) - 1 替代strle(S)的时候会报错 for (int j = 0; j原创 2020-10-19 01:04:44 · 176 阅读 · 0 评论 -
C语言 常用排序算法(附代码)
主要记录一些我常用到的排序算法,没用到的暂时不记录。qsort库函数qsort函数是C语言中一个快速排序的标准库函数,在stdlib.h中声名,其用法为:void qsort(void *base, int nelem, unsigned int width, int ( * pfCompare)( const void *, const void *));其中:base为待排序数组的起始地址,即数组名。nelem为待排序数组个数,如果知道元素为N个就写N,如果不知道就sizeof(arr)/原创 2020-08-21 21:29:05 · 2246 阅读 · 0 评论 -
C语言判断是否为素数(质数)
三个程序,判断一个数是否为素数,运算量依次递减。简单粗暴//函数->判断素数bool IsPrime(int num){ for (int i = 2; i < num; i++) { if (num % i == 0) return 0; } return 1;}int main(){ int n = 1234567; if (IsPrime(n)) { printf("YES\n"); } else { printf("NO\n"); }原创 2020-08-13 20:23:37 · 11704 阅读 · 0 评论 -
测试判断素数函数运行时间(C语言)
一段测试C语言程序运行时间的方法,程序如下://测试程序运行时间#include<stdio.h>#include<stdlib.h>#include<time.h>clock_t TimeStart, TimeEnd;double caltime;#define N 100000//函数->判断素数bool IsPrime(int num){ for (int i = 2; i < num; i++) { if (num % i原创 2020-08-13 20:01:22 · 437 阅读 · 0 评论 -
C语言指针学习记录
C语言指针学习记录1.基本定义1.1指针1.2指针变量新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入1.基本定义1.1指针将变量的地址形象化的称为指针。对程序进行编译的时候,系统会自动给变量分配内存单元。因此,我们原创 2020-07-27 09:26:21 · 167 阅读 · 0 评论 -
数据结构
一些基础知识:double *p;double x = 1.1;p = &x;1.一个字节是8位,一个字节一个地址;但是p存放的是一个地址了,一般存放的是首字节的地址。2.无论指针变量指向的变量占几个字节,指针变量都是占四个字节。结构体:1.结构体是重新定义了一个数据类型,把同类的都放在了一起。eg:struct Student { int sid; char n...原创 2020-02-08 17:03:06 · 149 阅读 · 0 评论 -
C语言学习记录--数组、函数
完了,C语言要重新学了;数组int a[5]={1,2,3,4,5}//a是数组名,5代表数组里元素的个数,并且这五个元素分别用a [0],a [1],a [2],a [3],a [4]来表示。a[i]指的是第i+1个元素;为什么要用数组:(1) 为了解决大量同类型数据的存储和使用问题;数组可以模拟一列数,二维数组可以模拟一个平面的数,当是三维数组的话,就是模拟一个立体空间...原创 2019-04-06 15:37:59 · 174 阅读 · 0 评论 -
C语言学习记录--指针、结构体
完了,要重新学习C语言了。指针是能存放其他变量地址的变量;# include <stdio.h>int main(void){ int * p; //p是变量的名字, int * 表示p变量存放的是int类型变量的地址 int i = 3; p = &i; //OK //p = i; //error,因为类型不一致,p只能存放int类型变量的地址,不能存放...原创 2019-04-07 17:25:00 · 186 阅读 · 0 评论 -
C语言左移右移
记录一下今天的收货。看下面一个程序: unit16_t index; unit32_t ucRXMsgData[4]={0,0,0,0}; unit16_t data0=CanaRegs.CAN_IF2DATA.bit.Data_0; // 提取标志位; if(data0==0X7E) // 判断标志位==7E; { for(index=1;index&l...原创 2019-05-17 20:56:08 · 1736 阅读 · 0 评论 -
->在C语言中的应用 学习笔记
部分转自https://blog.csdn.net/littesss/article/details/71185916->是一个整体,它是用于指向结构体、C++中的class等含有子数据的指针用来取子数据。换种说法,如果我们在C语言中定义了一个结构体,然后申明一个指针指向这个结构体,那么我们要用指针取出结构体中的数据,就要用到“->”.举个例子:struct Data{ ...原创 2019-05-20 21:02:26 · 573 阅读 · 0 评论 -
C语言之三目运算符---学习笔记
首先从一段代码说起:if(Cnt_Worktostandby >((g_SaftyConfig.bit.FreChgDisPowerEnable||g_SaftyConfig.bit.VGridDeratingChargeEnable)?45000:1500))这里面就涉及到一个很基本的C语言的三目运算。分解开来就是如果g_SaftyConfig.bit.FreChgDisPowe...原创 2019-05-29 21:44:10 · 4840 阅读 · 0 评论 -
C语言学习---小知识点总结
1.将一个16位的变量存放在两个8位的变量中。buf[0] = (UINT8)(Bat_Information.BatType >> 8);buf[1] = (UINT8)(Bat_Information.BatType & 0X00ff);其中,Bat_Information.BatType位16位,buf[1]为8位。前面的强制转换也可以省略。反过来类似。...原创 2019-07-12 09:03:20 · 237 阅读 · 0 评论 -
C语言常用算法归纳
记录一些常用的算法,包括实际应用的。首先是冒泡排序。这个一般在一些滤波算法的时候可能会用到。#include<stdio.h>int main(){ #define n 10 int a[n]; int i,j,k,t; for (i = 0;i < n; i++) { scanf("%d",&a[...原创 2019-12-05 22:21:55 · 2303 阅读 · 0 评论 -
C语言不允许对全局变量在函数外进行赋值
记录一段代码。#include<stdio.h>void PRINTFZIMU(int ch);struct ZIMU { int a; int b;};struct ZIMU zimu[3];zimu[0].a = 1;int main(){ zimu[0].a = 1; PRINTFZIMU(0); return 0;}...原创 2019-12-05 20:58:56 · 2214 阅读 · 0 评论 -
C语言学习记录--流程控制
完了,要重新学习C语言了。数据类型:整型:int(4个字节); 长整型:long int(8个字节); 短整型:short int(2个字节)浮点数[实数】:单精度浮点数–float(4个字节) ;双精度浮点型–double(8个字节)字符:单个字符 char (1个字节) 符号数据类型(结构体 枚举 共用体)代码规范:定义变量;对变量进行操作 ;输出值; (...原创 2019-03-31 18:44:21 · 168 阅读 · 0 评论 -
陷波器及其算法(基于C语言)
首先,陷波器的传递函数是:利用matlab对其进行离散化,tustin变换。syms w0 s Ts z xi % 定义符号变量G1 =(s^2+w0^2)/(s^2+2*w0*xi*s+w0^2) %传递函数sys_s2c = 2*(z-1)/Ts/(z+1)G2 = subs(G1,s,sys_s2c) %离散化 tustin变换G3 = colle...原创 2019-11-20 22:14:21 · 15268 阅读 · 17 评论 -
数组和指针的一些学习记录
数组和指针在某种程度上是等价的,但是也存在一些区别。下面通过一些代码块来说明。#include<stdio.h>void main(){ int a[4]={1,2,3,4}; int b;int c; b=(*a); c=(*a+1); printf("%d%5d\n", b,c);}数组名就是相当于地址,a是数组第一个元素的地址。而且数组地址是连续的,因此...原创 2019-05-12 20:03:35 · 165 阅读 · 0 评论 -
有符号与无符号数据传输--学习笔记
在调试CAN通信的时候,智能电表会发送功率数据,功率可以为正,也可以发送的是负功率。在接收传输数据的时候,遇到的一些问题,记录一下。首先粘贴几个错误的代码块。if(getCANMessage(CAN_RX_MSG_OBJ) > 0){ PVpower = getCANMessage(CAN_RX_MSG_OBJ);}else{ PVpower = -getCANMess...原创 2019-05-24 08:47:07 · 2081 阅读 · 1 评论 -
C语言学习---实现几个优先级的几种方法
需求是针对不同的控制变量实现不同的响应需求,但是存在一个优先级的问题。如果是只满足0 > 5 > 6 > 7 > 8的话,可以用continue。注意运用continue和break的区别。break用于完全结束一个循环,跳出循环体执行循环后面的语句。continue和break有点类似,区别在于continue只是终止本次循环,接着还执行后面的循环,bre...原创 2019-06-19 22:37:56 · 2341 阅读 · 0 评论 -
记录贴----四页定时充放电时间段校验
目的:目前已经完成的是四页充放电时间及其功率,每一页都是分别由‘充电起始时间,充电结束时间,充电功率,放电起始时间,放电结束时间,放电功率’。由于充电时间段和放电放电时间段之间不能有交叉,因此需要校验设置的时间是否合规。以前代码只是设置了一页,因此只需要对一页的充电时间段和放电时间段校验即可。现在扩展到四页,需要对该页,以及页和页之间的时间段之间相互比较。代码及其注释如下:UINT8 In...原创 2019-07-21 11:19:50 · 150 阅读 · 0 评论 -
FIR滤波器的C语言实现
下面代码实现的是一个四阶的FIR滤波器:#define FILTER_LEN 5float h[FILTER_LEN] = {0.0625,0.25,0.375,0.25,0.0625};float fDelayLine[FILTER_LEN] = {0,0,0,0,0};void FIR_Filter(void){ int i; float ftemp; ftemp = 0;...原创 2019-08-04 09:19:48 · 4734 阅读 · 1 评论 -
移位操作与乘除法的关系:
在DSP编程中,有很多时候会遇到要除10或者其他乘除法的操作。这时候就可以用移位的操作来实现了。先备忘一个优秀博文,下面的大部分大家可以去他们的博文去看,我下面的主体也是参考他们的博文的。https://blog.csdn.net/yehaibin/article/details/53639293https://blog.csdn.net/newbird105/article/deta...原创 2019-05-25 16:05:25 · 4208 阅读 · 1 评论