自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 收藏
  • 关注

原创 C++的简单知识(一)

一、宏定义:傻瓜式替换 无法定义复杂的函数二、关键字下面我们先来看一下语言中一些关键字的作用关键字:register提高程序运行效率:省去CPU从内存抓取数据的开销语法作用:尽可能将变量保存在CPU内部寄存器中使用注意事项只能修饰局部变量,不能修饰函数、全局变量使用register修饰的变量,不能通过&获取该变量的地址;(有可能该变量保存在cpu内部寄存器中)(C++)regi...

2020-04-10 10:10:51 347

原创 学习的大纲

2019-07-23 21:51:21 175

原创 半个月的学习总结(面试知识点)

一、什么是嵌入式?在已有硬件的基础上移植操作系统解决软硬件耦合度过高的导致的问题。二、单片机开发(裸机开发)与嵌入式开发的区别?是否移植操作系统三、嵌入式软件与非嵌入软件的区别?传统开发缺点:软硬件耦合度高,导致软件移植性较差;软件开发人员必须要懂硬件;软件的功能较差传统开发优点:方便简单嵌入式开发缺点:成本较高嵌入式开发优点:解决了传统开发的耦合度高导...

2019-07-21 20:01:11 401

原创 指针和数组

指针32位机C语言中指针是变量:所以它有如下特点:1.所占内存大小(4个字节 );2.作用域3.存储区域而指针又有步长,当指针进行表达式运算时。其步长跟所定义指针的类型相关如:char *p 步长为1 int *p 步长为4;所以在进行不同步长指针赋值时,会出现数据错误。延伸出另外一个知识点:大端字节序与小端字节序。这是由不同cup决定的(inter大多数是小端字节序)小...

2019-07-19 21:47:03 196

原创 计算一个字符串中最大数字子串的长度

int count_max_len(char str[]){ int count ; char *p = str; int max = 0; while(*p != '\0') { count = 0; while(*p >= '0' && *p <= '9') { count++; p++; } if(count &gt...

2019-07-18 21:51:02 638

原创 将一个字符串中的所有整数打印出来

这道题目其实就是讲字符串转化为整型数字的一道题目,在Linux C函数库中,我们可以直接调用atoi函数进行操作,在这里我们需要有自己的atoi函数。根据题意分析,和之前所写的atoi函数有所不同,我们需要判断的是这个字符串中数字区可能是不连续的,所以我们要用while语句而不是之前的for语句。int atoi(char str[]){ int num = 0; char *p =...

2019-07-18 21:49:56 440

原创 C语言的知识点(一)

2019-07-18 21:44:16 136

原创 C语言指针

给大家分享一下我对指针的一些理解,见识比较狭隘,大家有更高的见解可以一起交流。下面来看一下我的理解,大家请忽略我的图画的比较丑,大家不要见怪,划重点,我的图画的很丑!!!内存和地址在讲指针之前我们先来把内存和地址的知识梳理一下。计算机何为内存,何为地址呢?很好理解,下面我给大家举一个小小的例子,我们可以把计算机的内存看成是一排房子,然后每个房子里都可以存放东西,也就是我们所说的数据了...

2019-07-17 22:25:25 251

原创 C语言的一些关键字

C语言作用关键字:static const typedef extern register volatilestatic:1.修饰局部变量时(在函数体内):一个被声明为静态的变量在函数过程中值保持不变,使得声明周期延长至程序结束,此时的变量存放区域为数据段上。(从而可以少使用全局变量)2.修饰全局变量:使得全局变量的作用域在本文件中,不能被其他文件使用3.修饰函数:使得函数的...

2019-07-17 21:24:06 205

原创 C语言中{}的使用事项

在C语言中,大括号"{}"是一类比较特殊的符号,如果能够正确的使用它会使代码清晰度更好,从而使代码可读性提高,因而正确的使用体现了一个编程人员的专业素养。那么在C语言中,我们怎么该把大括号用在什么地方,该怎么用呢?1、 初始化数组变量那么为什么数组要初始化呢?变量在使用前应该初始化,防止未初始化的变量被引用。下面举一个数组初始化变量的例子;char str[32] = {0...

2019-07-14 10:43:32 9296

原创 c语言的野指针以及如何避免野指针

1、什么是野指针?未初始化的指针,随机指向一块内存2、如何避免野指针?养成良好的编码习惯:一、当指针没有确切指向要置空;二、当要给指针指向的空间赋值时要给它分配空间;三、检查空间分配是否成功;四、分配成功情况空间;五、释放空间;六、释放后指针再置为空。下面来一个实例:#include <stdio.h> int main(){...

2019-07-13 20:21:51 392

原创 gcc编译器和Makefile

gcc编译器gcc是一款linux Gun计划当中的一款编译工具,用于编译C语言文件。其显著特点就是可以交叉编译。说道交叉编译首先因为汇编语言的特点是,能够直接访问硬件,并且每款CPU都有自己的汇编语言。由于嵌入式系统需要进行操作系统的移植,并且在主机上开发的软件程序需要跑到特点的嵌入式系统中,不同的嵌入式系统所用到的处理器也是不同的如PC机CPU采用的是X86架构,即对应x86...

2019-07-12 01:03:09 442

原创 1~n中有多少个9

首先我们先来分析一下题目的意思:1~n中有多少个9,什么意思呢,举个例子:1~100中有多少个9,大家肯定一下子就会觉得简单啊,直接对所有数取模10等于9的不就是嘛。仔细分析一下,这么想对吗?很明显不对啊,90、91、92……这些除个位之外其它位上也可能有9,所以正确的是将各位上的9数一下即为正解。那么怎么操作呢?很简单,我们先将个位上的9计数,然后对该数字除10,重复上一步操作然后把所有的计数...

2019-07-12 00:52:05 491

原创 怎么实现两个int型的值互换

方法一:定义一个中间变量t = a;//先将a存放到t中a = b;//将b的值赋给ab = t;//将t的值赋给b方法二:变量自身做加减a = a + b;//将a与b的值相加赋给ab = a - b;//将新得到的a减去b得到新的ba = a - b;//将求和后的a减去新得到的b,从而实现交换值方法三:不定义变量,用按位异或a = a ^ b;b = a ^ ...

2019-07-12 00:25:31 2321 1

原创 将一个数字的每一位分别打印出来

首先我们先看一下题目:将一个三位数的百位,十位,个位分别打印出来。我们来理解一下题目的意思:表面上看是分别将一个三位数的每一位打印出来,仔细想一想,联系所学,其实它考察的就是我们的itoa函数,那何为itoa函数呢,顾名思义,就是讲一个整型转化为字符串类型输出而已。然后我们来具体的分析一下:比如我输入一个数字123然后需要将它输出为1、2、3,好的,那我们要怎么操作呢?个位的输出是最简单的,...

2019-07-11 01:11:52 2420 3

原创 嵌入式系统和Linux命令知识总结(一)

一、嵌入式开发概述:首先什么是嵌入式,嵌入式是怎么开始发展的;答:在原先传统模式开发中,(如51等单片机开发当中),我们开发的模式是软件直接耦合到硬件当中,自然二者耦合度过高会带来一些问题,如:软件移植性差(如果开发人员写好了一款软件只能在一个特定的硬件去运行,修改硬件将会导致软件无法运行),开发人员需软硬件知识都会,导致人才稀缺;在开发过程中开发人员需要顾全整体,没有心思去考虑软件产品的美...

2019-07-09 22:05:43 362

原创 编写自己的itoa和atoi函数

atoi函数:#include<stdio.h>void atoi(char str[]){ int num = 0; char *p = str; while(*p != '\0') { num = num*10 + *p - '0'; p++; } printf("num=%d\n",num);}int main(){ char str...

2019-07-09 21:46:54 333

原创 循环语句

1、while语句:while(表达式)语句表达式为循环条件,语句为循环体;其语义是:当表达式的值为非零时执行语句,然后再判断表达式的值只要它不为零,则继续执行语句,以此重复,直到表达式值为零。例:求两个数的最大公约数#include<stdio.h>int main(){ int a; int b; int c; printf("please enter...

2019-07-08 19:30:53 218

原创 C语言的一个简单实例:实现a+b+6

#include<stdio.h>int fun(int a , int b){ int sum; sum = a + b + 6; return sum;}int main(){ int a; int b; int sum; printf("please enter two numbers:"); scanf("%d%d",&a,&am...

2019-07-08 10:24:31 398

原创 C语言的关键字

C语言作用关键字:static const typedef extern register volatilestatic:1.修饰局部变量时(在函数体内):一个被声明为静态的变量在函数过程中值保持不变,使得声明周期延长至程序结束,此时的变量存放区域为数据段上。(从而可以少使用全局变量)2.修饰全局变量:使得全局变量的作用域在本文件中,不能被其他文件使用3.修饰函数:使得函数的作用域只在本...

2019-05-20 22:59:20 124

原创 一位数组、二维数组、三维数组

1、一位数组名:指针常量,保存数组首元素地址&a:一位数组的地址*(&a)=a;对一位数组的地址取值等于数组首元素的地址;对一位数组名取地址等于一位数组的地址;2、二维数组名:指针常量,保持首个一维数组的地址*(&aa)==aa;对二维数组的地址取值等于二维数组的首个一维数组的地址*aa=&aa[0][0];*(*(aa+i...

2019-05-20 22:55:27 1863

原创 野指针

1、什么是野指针?未初始化的指针,随机指向一块内存2、如何避免野指针?养成良好的编码习惯:一、当指针没有确切指向要置空;二、当要给指针指向的空间赋值时要给它分配空间;三、检查空间分配是否成功;四、分配成功情况空间;五、释放空间;六、释放后指针再置为空。下面来一个实例:#include <stdio.h>int main(){ cha...

2019-05-19 23:32:04 658

原创 编写自己的itoa函数

#include <stdio.h>void itoa(int num,char *str){ while(num!=0) { *str=num%10+'0'; str++; num=nnum/10; } *str='\0';}int main(){ int num; ...

2019-05-19 23:00:39 1092 1

原创 C语言的一些知识点,主要是指针的一些知识

C语言中指针是变量:所以它有如下特点:1.所占内存大小(4个字节 );2.作用域3.存储区域而指针又有步长,当指针进行表达式运算时。其步长跟所定义指针的类型相关如:char *p 步长为1 int *p 步长为4;所以在进行不同步长指针赋值时,会出现数据错误。延伸出另外一个知识点:大端字节序与小端字节序。这是由不同cup决定的(inter大多数是小端字节序)小端字节序:低地...

2019-05-12 21:20:36 171

原创 编写自己的atoi函数

#include<stdio.h>#include<stdlib.h>#include<assert.h>#include<string.h>enum State{ NORMAL, //正常 ABNORMAL //异常}sta...

2019-05-09 00:06:47 575

原创 写一个函数,它的原形是 int continumax(char *outputstr,char *intputstr); 功能:在字符串中找出连续最长的数字串,并把这个串的长度返回,并把这个最长数字串

#include <iostream> using namespace std; int continumax(char *outputstr,char *intputstr){ int length=0,curLength=0;; char *temp=NULL; while((*intputstr)!='\0') { wh...

2019-05-09 00:06:00 348

原创 C语言学习一个阶段的练习

C语言能力测试一、简答1.用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题);写一个"标准"宏MIN函数 ,这个宏输入两个参数并返回较小的一个#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL #define Min(a,b) ( ((a)>=(b))?(b):(a))2.用变量a给出下面的定义a) 一个...

2019-05-09 00:05:09 665

原创 有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

#include<stdio.h>int main(){ int i,j,m,n; int count = 0; for(i=1;i<=4;i++) { for(j=1;j<=4;j++) if(j!=i) for(m=1;m<=4;m++) if(m!=i && m!=j) ...

2019-04-23 23:37:38 982

原创 数组指针

#include <stdio.h>int main(){ //int (*p)[5] = NULL; //数组指针 int a[3][4] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2}; int (*p)[4] = &a[0]; //p是指针,指向二维数组的第一行(一个一维数组) p + 1; //加16个字节...

2019-04-23 22:43:32 82

原创 指针数组

#include <stdio.h>int main(){ //char *string[] = {"hello", "world"}; int a1[5] = {1, 2, 3, 4, 5}; int a2[5] = {2 ,3, 4, 5 ,6}; int a3[5] = {3, 4, 5 ,6, 7}; int a4[5] = {4, 5 ,6, 7, 8};...

2019-04-23 22:40:47 84

原创 冒泡排序(2)

#include <stdio.h>#define SIZE 10int greater(int a, int b){ return (a > b) ? 1 : 0;}int less(int a, int b){ return (a < b) ? 1 : 0;}void sort(int *a, int (*p)(int, int)) ...

2019-04-21 23:06:00 129

原创 指针函数

#include <stdio.h>#include <stdlib.h>#include <string.h>char *InitMemory() //指针函数{ char *s = (char *)malloc(sizeof(char) * 32); //堆空间,函数运行完不会释放 return s;}int main(){ ...

2019-04-21 23:05:03 2194

原创 函数和指针

#include <stdio.h>typedef unsigned char uchar;typedef char *(*T)(int, int);void f1(){ printf("helloworld!\n");}int f2(){ printf("helloworld1\n");}char *f3(int a, int b){ printf...

2019-04-21 23:04:29 110

原创 指针和字符串

#include <stdio.h>#include <stdlib.h>void sort(char *s[], int len){ int i, j; char *tmp; for (i = 0; i < len - 1; i++) { for (j = 0; j < len - 1 - i; j++) { if (strc...

2019-04-21 22:59:45 142

原创 指针和数组

#include <stdio.h>int main(){ int a[5] = {1, 2, 3, 4, 5}; int i; //int *p = a; //p是指针,保存整数的地址 a是数组首元素(整数)的地址 int *p = &a[0];/* for (i = 0; i < 5; i++) { printf("%d ", a[...

2019-04-20 22:58:09 92

原创 指针作为参数

#include <stdio.h>void swap(int *x, int *y){ int tmp = *x; *x = *y; *y = tmp;}int main(){ int a = 100; int b = 200; swap(&a, &b); printf("a = %d, b = %d\n", a, b); re...

2019-04-20 22:53:34 182

原创 指针的一些概念

#include <stdio.h>int main(){ printf("int * %d\n", sizeof(int *)); printf("char * %d\n", sizeof(char *)); printf("double * %d\n", sizeof(double *)); printf("short * %d\n", sizeof(short *...

2019-04-20 22:51:32 125

原创 一些基础知识

Linux基础知识考查 1、在Linux 系统中,以( 文件 )方式访问设备2、前台起动的进程使用( ctrl c )终止。3、在使用ls 命令时,用八进制形式显示非打印字符应使用参数( -b ) 。4、在Linux 系统中,用来存放系统所需要的配置文件和子目录的目录是(/etc )。5、在Linux 系统中,压缩文件后生成后缀为.gz 文件的命令是( gzip )。6、将/ho...

2019-04-18 22:29:31 153

原创 配置vim编译器(自己配置的仅供参考)

map <F9> :call SaveInputData()<CR>func! SaveInputData() exec "tabnew" exec 'normal "+gP' exec "w! /tmp/input_data"endfunccolorscheme torte"colorscheme murphy"colorscheme deser...

2019-04-18 22:26:52 951

原创 static用法

#include <stdio.h>void add(){ static int i = 0; //static修饰局部变量:改变变量的生命周期,直到程序结束才被释放(存放的地方不一样) i++; printf("%d\n", i);}int main(){ int i; for (i = 0; i < 3; i++) { add(); }...

2019-04-17 21:31:45 108

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除