C语言 ---------
文章平均质量分 92
关于c/c++中不属于硬件的代码
E2.0
脱坑、脱坑
展开
-
基于C语言的嵌入式适用的数据结构---队列和循环队列
初始位置全部占满队首出队再次入队再让队首出队原创 2020-08-14 10:22:37 · 515 阅读 · 0 评论 -
基于嵌入式需要的数据结构---C语言实现单链表和循环链表
一开始用一个指针连接head然后用del代替cur,继续用head索引结点。最后释放空间。原创 2020-08-14 09:41:53 · 526 阅读 · 0 评论 -
基于C语言的嵌入式适用的数据结构---顺序表
插入元素(复杂度分析):用顺序表完成以下题目:代码如下:#include <stdio.h>#include <stdlib.h>#define ERROR 0#define OK 1typedef struct Vector { int size, length; int *data;} Vector;void init(Vector *vector, int size) { vector->size = si原创 2020-08-12 22:24:49 · 277 阅读 · 0 评论 -
QT和C++实现显示温度数据界面
1、确定需要的类,确定行为和属性。2、面向过程,考虑数据流向。首先要确定使用的温度计类大概需要什么函数。如上图所示是大概需要的属性和行为。在电子温度计类继承的时候要注意是共有继承。否则无法正常访问父类的信息。需要对值进行读取和显示。不可能一直不断的读,所以用到定时器。为整个程序的运行分配时间。 QTimer *t1 = new QTimer(); // signals and slots .1 event creat 1 sig. slots deal..原创 2020-08-05 22:46:38 · 4590 阅读 · 1 评论 -
指针在Linux驱动中的应用
本文目录:第一部分:什么是指针 第二部分:指针在C中的应用 第三部分:Linux驱动实例中的C指针什么是指针?网上有很多关于指针的解释。我参考了深入理解C指针这本书,认为指针是一个传送门,通过这个传送门可以访问指针后面的内存。第二部分讲述为什么这么说。指针在C中的应用形参是指针用值传递数据和用指针传递数据的区别:先看下面的代码。用指针传递数据时,我们在main函数里调用swapWithPointers函数,传入的变量的地址。//用指针传递void swapWithPoin原创 2020-07-29 12:04:23 · 327 阅读 · 0 评论 -
C_Linux编程_进程通信笔记
MMU的作用:虚拟内存和物理内存的映射进程控制块PCB一个结构体进程的基本状态:初始、就绪、运行、挂起、终止。环境变量:获取环境变量:char *getenv(const char *name)进程API:创建一个新的进程:pid_t fork(void)创建一个进程失败返回 -1成功返回两次父进程返回子进程的id子进程返回 0获取进程i...原创 2020-02-07 10:39:20 · 79 阅读 · 0 评论 -
C_Linux编程_进程通信pipe、fifo、mmap
1、pipe#include <stdio.h>#include <unistd.h>#include <sys/types.h>#include <sys/wait.h>int main(){ int fd[2]; pipe(fd); pid_t pid; int n =2,i = 0; ...原创 2020-02-07 10:37:06 · 133 阅读 · 0 评论 -
C_Linux编程_进程getenv()、execlp()、WIFEXITED
/*char *getenv(const char *name)搜索 name 所指向的环境字符串,并返回相关的值给字符串*//*getppid()用来取得目前进程的父进程识别码。*//*int execlp(const char * file,const char * arg,....);execlp()会从PATH 环境变量所指的目录中查找符合参数file的...原创 2020-02-07 10:28:36 · 496 阅读 · 0 评论 -
C_Linux编程_信号_6、进程回收waitpid()
我们在之前加上屏蔽是为了将子进程结束的信号阻塞在信号集中,否则作为17号信号直接就释放了。加入阻塞后。我将阻塞都屏蔽掉。也就接受不到返回个父进程的17信号了。#include <stdio.h>#include <unistd.h>#include <sys/wait.h>#include <signal.h>...原创 2020-02-07 00:25:20 · 308 阅读 · 0 评论 -
C_Linux编程_信号_5、信号堵塞
涉及sigprocmask()sigpending()sigismember()/*sigismember(const sigset_t *set,int signum);用来测试参数signum 代表的信号是否已加入至参数set信号集里如果信号集里已有该信号则返回1,否则返回0。如果有错误则返回-1*/用这个函数判断信号是否被回收。其余的代码里有。在这个44信号接受之...原创 2020-02-07 00:11:26 · 114 阅读 · 0 评论 -
C_Linux编程_信号_4、信号的处理流程sigaction&sigqueue函数的使用
首先推荐一个学Linux信息机制的博客:https://www.cnblogs.com/hoys/archive/2012/08/19/2646377.html强的很,通俗易懂。可以说sigaction是signal函数的加强版,sigqueue是kill函数的加强版实例一:信号发送及处理实现一个信号接收程序sigreceive(其中信号安装由sigaction())...转载 2020-02-06 01:04:21 · 289 阅读 · 0 评论 -
C_Linux编程_信号_3、定时器setitimer&alarm&signal函数
1、简单的alarm函数我们为他设置了6秒的生命周期。#include <stdio.h>#include <unistd.h>main(int argc, char const *argv[]){ int ret = 0; //放置一个闹钟,当6秒过后就会提示 ret = alarm(6); printf("ret ...原创 2020-02-05 11:52:51 · 428 阅读 · 0 评论 -
C_Linux编程_信号_2、关闭子进程kill函数和进程自杀
一、kill()kill(pid3,SIGKILL); //SIGKILL最为常用。用来立即结束程序的运行. 本信号不能被阻塞、处理和忽略。如果管理员发现某个进程终止不了,可尝试发送这个信号。#include <stdio.h>#include <unistd.h>#include <sys/types.h>#include &...原创 2020-02-04 11:17:31 · 3345 阅读 · 0 评论 -
C_Linux编程_信号_1、开启子进程fork函数
pid_t pid = fork();它可能有三种不同的返回值: 1)在父进程中,fork返回新创建子进程的进程ID; 2)在子进程中,fork返回0; 3)如果出现错误,fork返回一个负值;父子进程分别运行代码,体现了一个分裂的过程。#include <stdio.h>#include <unistd.h>#include &l...原创 2020-02-04 10:42:16 · 143 阅读 · 0 评论 -
C_Linux编程_信号
信号四要素:编号名称事件默认处理动作终止忽略core暂停特点:简单信息少特定条件产生优先级高(软中断)信号的处理方式:执行默认动作忽略捕捉系统api产生信号kill函数int kill(pid_t pid,int sig)pid大于0,要发送进程IDpid=0 代表当前调用进程组内所有进程pid=-1 代表有权限发送的所有...原创 2020-02-04 10:30:52 · 80 阅读 · 0 评论 -
C_Linux编程_Linux基础_makefile代码
# get all .c fileSrcFiles=$(wildcard *.cpp) # all .c file --> .o fileObjFiles=$(patsubst %.cpp,%,$(SrcFiles))all:app1# 定义变量,目标文件# ObjFiles=01_.o# 将编译的过程分离开app1:$(ObjFiles) gcc -o $(Obj...原创 2020-02-04 10:02:10 · 72 阅读 · 0 评论 -
C_Linux编程_Linux基础_makefile笔记
静态库linux:libxxxx.a —>windows的.lib文件makefile命名规则:makefileMakefile三要素:目标依赖:通过什么文件去生成规则命令:如何去生成函数:wildcard:可以进行文件匹配patsubst:内容的替换变量:(只能在规则里出现)$@代表目标$^全部依赖$<第一个依赖$?第一个变...原创 2020-02-04 09:57:23 · 101 阅读 · 0 评论 -
C_Linux编程_安全
明文传输应用安全传输平台,对明文进行加密在接受的app进行解密加密和解密加密的三要素:明文和密文,算法,秘钥加密的分类:对称加密:加密的秘钥和解密的秘钥一致优点:加密速度快,效率高缺点:安全性低,秘钥的分发困难应用场景:文件加密和数据加密非对称加密:不一致(公钥和私钥)优点:安全缺点:慢应用场景:进行身份识别,秘钥保护...原创 2020-02-04 09:34:12 · 99 阅读 · 0 评论 -
C语言写 贪吃蛇,这个不是我自己写的
#include<stdio.h>#include<stdlib.h>#include<Windows.h>#include<conio.h>#include<time.h>char gamemap[20][40];//游戏地图大小 20*40int score=0;//当前分数//记录蛇的结点int x[800];//每...转载 2018-04-26 16:43:49 · 343 阅读 · 0 评论 -
用C语言求质数
#include <stdio.h>int main() {for(int i=100;i<=200;i++){for(int j=2;j<i;j++){ if(i%j==0){ break; } if(j==i-1) { printf("%d ",i); } } } return 0; }原创 2018-04-26 16:39:40 · 4805 阅读 · 1 评论 -
用c语言进行阶乘运算
#include <stdio.h>void main(){ double a[10][10],f=1.0,z,k; int i,j,n,s,q,p,b; printf("请输入n阶矩阵:"); scanf("%d",&n); s=n*n; printf("请输入%d个整数",s); for(i=0;i<n;i++) for(j=0;j&l...原创 2018-04-26 16:34:09 · 1666 阅读 · 0 评论 -
大物实验数据处理——用C求标准误差、标准偏差、标准偏差、相对误差
#include<stdio.h>#include<math.h>int main(void){ int i,n; double xp,sx,e,sxp,xz=0.00,xpz=0.00; double a[10]; printf("请输入您的n个实验数据"); scanf("%d",&n); for(i=0;i<n;i++) sca...原创 2018-04-26 16:18:37 · 4647 阅读 · 0 评论 -
VC++对于C语言的调试之断点类型 、设置断点与调试窗口
其实你随便找本写VC的书,都会比我写的要好一、首先断点的类型,有四种:1、位置断点:就是我们平时用的最多的找到你需要的那一行 Fn(组合功能键)+F9(如果没有Fn直接F9就好)去view那里点击debug,然后里面后有很多选项框但好像只有2、数据断点:点击edit里的breakpoint就好3、条件断点:4、消息断点:这个我还没有用过,所以没写,而且这个好像真的用的不多...原创 2018-05-05 21:05:06 · 5326 阅读 · 0 评论 -
FFT快速傅里叶变化源码
// fft1.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//// #include "pch.h"#include <iostream>#include <math.h>#include <stdio.h>#define N 64 //64点#define log2N 6 //log2N=6//复数类型t...原创 2019-02-05 23:17:23 · 1086 阅读 · 1 评论