c/c++
文章平均质量分 96
zsoros
这个作者很懒,什么都没留下…
展开
-
字符串(1)---strcpy,strncpy,strcat,strncat,strcmp,strncmp,strlen,strchr,strrchr实现
字符串(1)—strcpy,strncpy,strcat,strncat,strcmp,strncmp,strlen,strchr,strrchr实现strlen:计算长度int My_strlen (const char *src){ assert(src!=NULL); int len=0; while(*src++!='\0') { len++; } return ...原创 2018-11-25 01:07:00 · 231 阅读 · 0 评论 -
C++---const总结(1)const与指针&&常引用
const总结(1)const与指针&&常引用目录const总结(1)const与指针&&常引用const在c/c++的区别:c中的const:c++中的const:const与指针const与一级指针const与二级指针 const与引用---常引用(类型名 &引用名)面试题:(测试分析) const在...原创 2019-02-26 22:34:00 · 527 阅读 · 0 评论 -
局部对象&&静态对象生命周期 || new 创建的对象的生命周期
局部对象&&静态对象生命周期 || new 创建的对象的生命周期 局部对象&&静态对象生命周期 非静态局部对象特点:在定义它的函数中可以使用,函数外不可访问存储位置在栈区当函数的控制路径经过变量定义语句时创建该对象,当到达定义所在块的末尾时销毁它static局部对象特点:函数内的static对象存储位置在全局数据区定义它的函数中...原创 2019-02-26 20:56:50 · 1683 阅读 · 0 评论 -
对象---关于对象的生命周期考题的分析
对象---关于对象的生命周期考题的分析目录对象---关于对象的生命周期考题的分析综上小结:面试例题:小结:#include <iostream>using namespace std;class Test{public: Test(int data = 100) : ma(data) { cout << "Test(in...原创 2019-02-26 20:36:23 · 229 阅读 · 0 评论 -
c++ 11---右值 ,左值,右值引用(1)
右值与左值:在C++11中所有的值必属于左值、右值两者之一,右值又可以细分为纯右值、将亡值。在C++11中可以取地址的、有名字的就是左值,反之,不能取地址的、没有名字的就是右值(将亡值或纯右值)。举个例子,int a = b+c, a 就是左值,其有变量名为a,通过&a可以获取该变量的地址;表达式b+c、函数int func()的返回值是右值,在其被赋值给某一变量前,我们不能通过变量名找...原创 2019-04-01 01:55:01 · 211 阅读 · 0 评论 -
C++11 ---右值引用 ,转移语义,完美转发
目录左值引用和右值引用面向对象的效率问题右值引用的拷贝构造和operator=赋值函数一道笔试题函数接口返回容器引用折叠std::move移动语义std::forward完美转发左值引用和右值引用在说右值引用之前,先回忆一下C++传统的左值引用,左值引用示例代码:int main(){ int a = 10; int &b = a; // 定义一个左值引用变量 b = 20;...原创 2019-04-09 03:00:03 · 1682 阅读 · 3 评论 -
C++---enum枚举量声明、定义、使用与枚举类详解
众所周知,C/C++语言可以使用#define和const创建符号常量,而使用enum工具不仅能够创建符号常量,还能定义新的数据类型,但是必须按照一定的规则进行,下面我们一起看下enum的使用方法。步骤(一)——枚举量的声明和定义(1)首先,请看下面的语句:e...转载 2019-04-10 21:44:40 · 586 阅读 · 0 评论 -
c++11---智能指针
智能指针介绍学习C++的人,一直在接触裸指针,一边感受着它的强大,一边感受着它的坑爹。当然,坑不坑爹在于开发者,指针本身近乎完美,但奈何用的人比较猥琐,给自己埋下无数的坑,还哭喊着指针不好用,那么今天要介绍的智能指针可以释放大家在使用裸指针时的一些压力,当然智能指针无法替代裸指针的全部功能。裸指针到底有什么不好,写过一些C++代码的人应该都能知道,比如下面的原因:忘记释放资源,导致资源泄露...原创 2019-04-09 02:09:10 · 240 阅读 · 0 评论 -
c++string实现的大数加减乘除
class BigInt{public: BigInt(string str) :strDigit(str){} friend ostream& operator<<(ostream &out, const BigInt &src); friend BigInt operator+(const BigInt &lhs, const BigIn...原创 2019-04-13 21:32:45 · 2235 阅读 · 0 评论 -
C++ --- const总结(2)常对象,常变量,常成员函数详解
C++ 《==》 const总结(2)常对象,常变量,常成员函数详解 &nbsp;既要使数据能在一定范围内共享,又要保证它不被任意修改,可使用const。·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;用const修饰的声明数据成员称为常数据成员转载 2019-02-26 22:39:37 · 585 阅读 · 0 评论 -
虚拟内存vs物理内存
第一层理解1. 每个进程都有自己独立的4G内存空间,各个进程的内存空间具有类似的结构 2. 一个新进转载 2018-12-03 23:11:38 · 266 阅读 · 0 评论 -
字符串(3)---删除字符串中的多余空格
删除字符串中的多余空格实现了删除字符串头尾部的空格和字符串中多余空格void deblank(char *string){ assert(string!=NULL); char *a=string; char *b=string; int i=0; int j=strlen(string)-1; while(string[i]==' '){i++;} while(string[...原创 2018-11-25 01:14:16 · 319 阅读 · 0 评论 -
memcpy && memmove 的代码实现和区别
memcpy &amp;amp;&amp;amp; memmove两者的相同点:实现内存上的拷贝,都在&amp;lt;string.h&amp;gt;头文件中memcpy:函数原型:void *memcpy(void *dst, const void *src, size_t count)函数功能:memcpy()函数从src内存中拷贝n个字节到dest内存区域,但是源和目的的内存区域不能重叠。返回值:memcpy.原创 2018-11-28 02:08:52 · 163 阅读 · 0 评论 -
memset 用法&&代码实现
memset 目录memset 基础知识:常见用法:代码实现:其他(注意): 基础知识:头文件:<string.h>函数原型:extern void *memset(void *buffer, int c, int count) (buffer:为指针或是数组 c:是赋给buffer的值 count:是buffer的长度.)函数功...原创 2018-11-28 11:31:59 · 867 阅读 · 0 评论 -
通配符匹配(C语言实现)---(1)单个字符串包含通配符
通配符匹配(C语言实现) 实现 方法(1):递归实现 bool isMatch(const char *s, const char *p){ assert(s != NULL && p != NULL); if(*p == '*') { while(*p=='*'){p++;}//跳出连续的* if(...原创 2018-12-01 00:02:31 · 3817 阅读 · 2 评论 -
memcmp用法&&实现
memcmp用法&&实现目录memcmp用法&&实现用法:实现 :strcmp && memcmp区别 用法: 头文件:<memory.h>或 <string.h>函数功能:比较内存区域buf1和buf2的前count个字节。该函数是按字节比较的函数返回值: 当bu...原创 2018-11-28 16:38:41 · 5114 阅读 · 1 评论 -
深入理解程序从编译到运行
From:http://blog.chinaunix.net/uid-22327815-id-3540305.html从Hello World说程序运行机制:http://www.sohu.com/a/132798003_505868C/C++中如何在main()函数之前执行一条语句?:https://www.zhihu.com/qu...转载 2018-12-03 23:06:31 · 286 阅读 · 0 评论 -
二级指针的作用详解
欢迎转载,转载请注明原文地址:http://blog.csdn.net/majianfei1023/article/details/46629065一、概念在如下的A指向B、B指向C的指向关系中:首先C是"一段内容",比如你用malloc或者new分配了一块内存,然后塞进去"一段内容",那就是C了。C的起始地址是0x00000008...转载 2018-12-03 23:09:52 · 269 阅读 · 0 评论 -
大小端详解(判断+转换)
一、什么是大端和小端所谓的大端模式,就是高位字节排放在内存的低地址端,低位字节排放在内存的高地址端。所谓的小端模式,就是低位字节排放在内存的低地址端,高位字节排放在内存的高地址端。简单来说:大端——高尾端,小端——低尾端举个例子,比如数字 0x12 34 56 78在内存中的表示形式为:1)大端模式:低地址 -----------------> 高地址0x12 | ...原创 2019-04-25 00:14:46 · 49686 阅读 · 8 评论