- 博客(18)
- 收藏
- 关注
原创 C/C++内存管理
一.C/C++程序内存区域划分1. 栈又叫堆栈,非静态局部变量,函数参数,返回值等等,栈是向下增长的。2. 内存映射段是高效的I/O映射方式,用于装载一个共享的动态内存库。用户可使用系统接口创建共享共 享内存,做进程间通信。3. 堆用于程序运行时动态内存分配,堆是可以上增长的。4. 数据段--存储全局数据和静态数据。5. 代码段--可执行的代码/只读常量。二.内存管理C语言中的内存管理:1.malloc函数:void* malloc(size_t siz...
2022-04-14 10:28:47 891 1
原创 C++实现日期类
#include <iostream>using namespace std;class Date{public: // 获取某年某月的天数 int GetMonthDay(int year, int month) { static int days[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; int day = days[month]; if (month == 2&& (.
2022-03-26 18:12:32 172 1
原创 Linux下用命名管道实现进程间通信
serve端代码:#include <stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <unistd.h>#include <stdlib.h>#define ERR_EXIT(m) do{ perror(m); exit(EXIT_FAILURE);}while(0)int main(){ u
2022-03-26 10:34:36 141
原创 (Linux)僵尸进程&&孤儿进程
一:Z(zombie)-僵尸进程僵死状态(Zombies)是一个比较特殊的状态。当进程退出并且父进程没有读取到子进程退出的返回代码时就会产生僵死(尸)进程 僵死进程会以终止状态保持在进程表中,并且会一直在等待父进程读取退出状态代码。 所以,只要子进程退出,父进程还在运行,但父进程没有读取子进程状态,子进程进入Z状态;举个例子:先附上代码: 1 #include <stdio.h> ...
2022-03-25 17:24:09 160
原创 C++内联函数
一.内联函数是什么? 内联函数是指用inline关键字修饰的函数。在类内定义的函数被默认成内联函数。内联函数从源代码层看,有函数的结构,而在编译后,却不具备函数的性质内联函数不是在调用时发生控制转移,而是在编译时将函数体嵌入在每一个调用处。编译时,类似宏替换,使用函数体替换调用处的函数名。一般在代码中用inline修饰,但是能否形成内联函数,需要看编译器对该函数定义的具体处理。二.为什么要用内联函数?1. inline 这个名称可以反映出它的工作方式,函数会在它所调用的位置上展开.这么做可..
2022-03-15 16:07:39 1255
原创 函数重载.
一:什么是函数重载?所谓函数重载是指同一个函数名可以对应着多个函数的实现函数重载一般情况满足三个条件:1.函数名相同。2.作用域相同。3.参数类型不同注意:重载函数的参数个数,参数类型或参数顺序三者中必须有一个不同如下:int Add(int a,int b){ int temp=a+b; return temp;}double Add(double a,double b){ double temp=a+b; return temp
2022-03-02 21:02:40 3554 1
原创 Linux中的make命令与Makefile
1.make命令的重要性。make指令是用来维护程序模块关系和生成可执行程序,可极大的提高软件开发效率,在项目开发中应用广泛。make命名的参数: -f file 指定file文档为描述文档,假如file参数为"-"符,那么描述文档指向标准输入。假如没有"-f"参数,则系统将默认当前目录下名为makefile或名为Makefile的文档为描述文档。在Linux中, GNU make 工具在当前工作目录中按照GNUmakefile、makefile、Makefile的顺序搜索 m...
2022-01-09 16:44:27 914
原创 内存重叠问题(memmove和memcpy)
目录memove和memcpy1.memmove2.memcpy3.两者区别内存重叠1. 内存重叠问题的条件2.内存重叠处理措施:memove和memcpy1.memmove函数原型:void *memmove(void *dest, const void *src, size_t count)返回值说明:返回值为void *参数说明:dest,src分别为目标串和源串的首地址。count为要移动的字符的个数函数说明:memmove用于从src拷贝co..
2021-10-29 15:39:01 3436
原创 c语言-整型和浮点型数据在内存中的存储
整型在内存中的存储原码、反码、补码无符号数据没有符号位,有符号数据最高位为符号位 。负数:(1)原码:二进制形式。e.g. -5原码1000 0101(2)反码:原码符号位不变,其他位按位取反。1111 1010(3)补码:反码+1就得到了补码。 1111 1011正数:正数的原码、反码、补码相同。大端和小端 大端存储模式:数据的低位保存在内存的高地址中,数据的高位保存在内存的低地址中。 小端存储模式:数据的地位保存在内存的低地址中,数据...
2021-10-21 11:11:55 160
原创 C语言#冒泡排序
一.基本概念.冒泡排序即是拿第一个数与第二个数作比较,如果第一个数比第二个数大,则两者交换位置(这里我们认为希望得到的是一个升序数列)然后再拿第二个跟第三个数bi'jiao
2021-05-28 18:25:37 115
原创 c语言函数调用实现比较两个整数的大小
目录1.编写主函数,输入需要比较的两个整数。2.比较两个整数的大小3.完整代码4.运行结果1.编写主函数,输入需要比较的两个整数。int Max(int a,int b);//函数声明int main(){int a =0;int b= 0;printf("Please enter two number:");scanf("%d %d",&a,&b);printf("The max is %d\n",Max(a,b));//调用函数.
2021-05-09 19:05:26 8720 1
原创 第一篇博客
目录自我介绍目标学习计划在学习编程上打算花费的时间结言自我介绍首先呢,我是来自于陕西西安的一名sophomore,目前是本科在读,在校学习的是软件工程专业。在看了好多CSDN大神的文章之后,自己下定决心也想在CSDN中来记录,分享自己的学习的点点滴滴。目标目前是大学在读,所以自己的目标就是两年后的校招中,自己能脱颖而出,找到自己喜欢的工作。学习计划1.踏实打好基础,即学好c语言。掌握一门语言,达到运用自如的水平。2.多学多练,遇到不会的就请教老师或同学,及时解
2021-05-05 13:23:27 106
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人