自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 类和对象

class People{public: void eat(char* _what) { std::cout<<name<<"is eatting"<<_what<<std::endl; } void sleep(char* _where) { std::cout<<name<<"is sleeping ...

2020-04-02 22:47:01 155

原创 new

动态开辟内存C:malloc | freevoid* malloc(size_t size);size 开辟的内存大小void* 无符号指针 [) 半开半闭 不安全void free(void* ptr); int* p = (int*)malloc(sizeof(int)*x); free(p);C++: new | delete (关键字)...

2020-03-28 17:35:08 185

原创 引用

引用变量是一个别名,也就是说,它是某个已存在变量的另一个名字。一旦把引用初始化为某个变量,就可以使用该引用名称或变量名称来指向变量。#include<iostream>using namespace std;void Swap(int &a,int &b){ int tmp=a; a=b; b=tmp;}int main(){ int a=10;...

2020-03-23 21:16:14 129

原创 const在C和C++中的区别

C:const 修饰的变量 (常变量)常变量的处理机制编译阶段 查询常变量有没有做左值,其他的处理与普通变量的处理方式相同int main()//C{ const int a = 10;//常变量 int* p=&a; *p = 20; printf("a:%d\n",a);//√ return 0;}C++:const 修饰的变量 (常量)编译阶段 使用到...

2020-03-16 17:11:27 97

原创 inline内联函数

编译阶段inline函数函数的调用把inline函数代码直接展开 不生成函数符号inline int Sum(int a , int b ){ return a+b;}int main(){ Sum(10,20); return 0;}inline函数与普通函数处理有什么区别?1.普通函数函数堆栈和清栈2.inline直接代码展开,没有堆栈和清栈开销 效率提...

2020-03-16 16:51:58 85

原创 Linux复习

目录结构:/boot:存放内核和启动有关的文件 /bin:存放命令/etc:存放配置文件 /dev:设备文件/lib:存放库文件 /home:所有普通用户的家目录/mnt:临时挂载点 /proc:虚拟目录 (存放进程中的某些信息)/root:管理员的家目录文件类型...

2020-03-09 14:05:42 115

原创 函数重载

int Sum(int a,int b){ return a+b;}double Sum(double a,double b){ return a+b;}float Sum(float a,float b){ return a+b;}int main(){ Sum(10,20); Sum(10.1f,20.2f); Sum(10.1,20.2); return 0...

2020-03-07 21:01:14 171

原创 函数的默认值

int Sum(int a,int b=10,int c=10){ return a+b+c;}int main(){ Sum(10);}默认值的赋予规则:自右向左实参的匹配的规则:自左向右当有默认值,有实参时,取实参当有默认值,没实参时,取默认值当没默认值,没实参时,取实参当既没默认值,也没实参时,函数报错...

2020-03-07 20:00:41 309

原创 简单汇编指令

eax ebx ecx edx 存放变量的寄存器ebp 栈底指针寄存器esp 栈顶指针寄存器汇编指令mov 移植 mov eax,4;lea 移地址 lea dword ptr[eax],[a];[a] 取a的地址dword 4个字节sub 累减 eax-=4;add 累加 eax+=4;push 压栈...

2020-03-06 21:36:37 258

原创 强弱符号

#include<stdio.h>short a = 10;//强符号short b = 20;int main(){ Func(); printf("a: %d\n",a); printf("b: %d\n",b); return 0}int a;//弱符号void Func(){ a = 100;}//生成指令:mov dword ptr[a],...

2020-03-03 15:59:48 744

原创 预编译-编译-汇编-链接

预编译1.删除#define并做文本替换2.处理#if,#denif等预编译指令3.处理#include递归展开的过程4.删除注释5.添加行号和文件标识6.保留#program指令编译1.词法分析2.语法分析3.语义分析4.代码优化5.生成指令汇编翻译指令链接#include...

2020-03-03 15:37:14 200

原创 信号量

临界资源:同一时刻只允许一个进程访问的资源临界区:访问临界资源的代码段当我们编写的程序使用了线程时,不管是运行在多用户系统上、多进程系统上,还是运行在多用户多进程系统上。我们通常会发现,程序中存在着一部分临界代码,我们需要确保只有一个进程(或只有一个执行进程)可以进去这个临界代码并拥有对资源独占式的访问权。信号量:是一个特殊的变量,只允许对它等待(wait)和发送信号(signal)这两种操...

2019-11-26 14:32:31 100

原创 管道

进程间通信:管道,信号量,共享内存,消息队列,套接字。管道是进程间通信的重要途经,其过程是:在内存中创建一个共享文件,从而使通信双方利用这个共享文件来传递信息。由于这种方式具有单向传递数据的特点,所以这个作为传递消息的共享文件就叫做“管道”。管道分为有名管道mkfifo()和无名管道mkpipe()。1.无名和有名管道的区别?有名管道可以在任意两个进程间通信,无名只能在父子间2.写入管道...

2019-11-26 10:26:47 179

原创 strlen的实现--计算一个字符串的长度

#include<stdio.h>#include<stdlib.h>int strlen(char *str){ int len=0;/*依次访问字符串的内容,计算字符数,知道遇到NUL终止符。*/whlie(*str++ != '\0'){ len+=1;}return len;指针到达字符串末尾的’\0’字节之前,while语句中的*st...

2019-11-02 10:27:05 482

原创 字符串数组->数字 atoi实现

int Myatoi(const char *str){ assert(str != NULL); if(str == NULL) return 0; int tmp = 0; int flg = 1;//符号 while(*str == ' ')//开头空格 str++; if(*str == '-') { flg = -1; str++; } if(*str...

2019-10-26 14:49:19 220

原创 数字->字符串数组 itoa 实现

void Reverse(char *str){ char *p = str; char tmp; //p找打字符串结尾 while(*p != '\0') p++; //p和str交换 for(p--;str<p;str++,p--) { tmp = *str; *str = *p; *p = tmp; }}//void Myitoa(char *...

2019-10-26 14:47:14 136

原创 递归函数入栈及出栈图解

入栈:出栈:

2019-10-23 10:15:24 1357

原创 空指针崩溃

#include <stdio.h>void Fun(int *p){ p = NULL;}int main(){ int a = 10; int *p = &a; //p = NULL;//崩溃 Fun(p); printf("%d\n",*p);//思考,1.为什么不崩溃,2.想要崩溃怎么办? return 0;}父函数调用子函数,子函数...

2019-10-23 09:58:55 196

原创 请输入一个整数,1.判断其位数、2.逆序输出其每位数字、3.顺序输入其每位数字。(C语言)

#include<stdio.h>#include<math.h>int GetFigures(int n) //判断位数{ if(n == 0) //如果为0,直接返回位数为1 return 1; int count = 0; //储存位数 while(n != 0) { count++; //每丢弃一次个位储存位数变量+1 ...

2019-09-12 11:36:03 556

空空如也

空空如也

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

TA关注的人

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