![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
lucky0han
永远保持低姿态,你才能不断成长。
展开
-
C/C++遍历目录下的所有文件(Windows/Linux篇,超详细)
本文可转载,转载请注明出处:http://www.cnblogs.com/collectionne/p/6815924.html。前面的一篇文章我们讲了用Windows API遍历一个目录下的所有文件,这次我们讲用一种Windows/Linux通用的方法遍历一个目录下的所有文件。Windows/Linux的IDE都会提供一个头文件——<io.h>。看名字,似乎是关于...转载 2020-05-01 22:21:24 · 2618 阅读 · 1 评论 -
sockaddr和sockaddr_in详解
struct sockaddr和struct sockaddr_in这两个结构体用来处理网络通信的地址。一、sockaddrsockaddr在头文件#include <sys/socket.h>中定义,sockaddr的缺陷是:sa_data把目标地址和端口信息混在一起了,如下:struct sockaddr { sa_family_t sin_famil...转载 2020-04-26 14:19:40 · 429 阅读 · 0 评论 -
sprintf、strcpy、strncpy及 memcpy 函数,请问这些函数功能有什么区别?
链接:https://www.nowcoder.com/questionTerminal/52e74d99daf64139b0100fd48a5d2b26来源:牛客网sprintf:把格式化字符串写入某个字符串,对写入buffer的字符数没有限制,存在溢出可能;strcpy:把src开始以\0结尾的字符串复制到以dest为开始的地址空间,dest可能空间不够存放;strncpy:...转载 2020-04-26 14:10:08 · 244 阅读 · 0 评论 -
C++——关于内存泄漏问题
“内存泄漏不是系统无法回收那片内存,而是你自己的应用程序无法使用那片内存。当你程序结束时,你所有分配的内存自动都被系统回收,不存在泄漏问题。但是在你程序的生命期内,如果你分配的内存都不回收,你将很快没内存使用。”再用自己的一句话来概括的话就是:操作系统本身就有内存管理的职责,一般而言,用malloc、new操作分配的内存,在进程结束后,操作系统是会自己的回收的。但某些系统态的资源,用特殊的系统AP...转载 2020-02-23 22:50:23 · 301 阅读 · 0 评论 -
C++运算符优先级
原创 2020-02-21 13:09:21 · 149 阅读 · 0 评论 -
C++数组的详细解析
概述数组在写程序时经常用到,但是对于它和指针的关系,自己经常搞混,所有抽点时间对数组进行整理。1、数组的概念和使用数组是用来存储相同类型的变量的顺序集合。所有的数组都是由连续的内存位置组成。最低的地址对应第一个元素,最高的地址对应最后一个元素。语法:type arrayName [ arraySize ][arraySize1]; arraySize必须是一个大于等于零的整数...转载 2020-02-21 12:48:57 · 497 阅读 · 0 评论 -
c++之list的用法
list同vector一样是c++中的一个模板类。关于它的详细内容可查看c++的文档http://www.cplusplus.com/reference/list/list/C++中list的使用方法及常用list操作总结一、List定义:List是stl实现的双向链表,与向量(vectors)相比, 它允许快速的插入和删除,但是随机访问却比较慢。使用时需要添加头文件#includ...转载 2020-01-15 14:20:20 · 1092 阅读 · 2 评论 -
C++——fcntl
fcntl函数有5种功能:复制一个现有的描述符(cmd=F_DUPFD). 获得/设置文件描述符标记(cmd=F_GETFD或F_SETFD). 获得/设置文件状态标记(cmd=F_GETFL或F_SETFL). 获得/设置异步I/O所有权(cmd=F_GETOWN或F_SETOWN). 获得/设置记录锁(cmd=F_GETLK,F_SETLK或F_SETLKW). 这是一种读写锁...转载 2020-01-15 14:01:28 · 2725 阅读 · 0 评论 -
C/C++对运算符重载详解
下面来进行这段代码的分析:structnode{//定义一个结构体node(节点)intx;inty;intlen;//node中有3个成员变量x,y,lenbooloperator<(constnode&a)const{//重载<操作符。可以对两个node使用<操作符进行比较re...转载 2020-01-14 11:23:05 · 1450 阅读 · 1 评论 -
C++ const修饰函数、函数参数、函数返回值
转载自:https://blog.csdn.net/my_mao/article/details/22872149const修饰函数在类中将成员函数修饰为const表明在该函数体内,不能修改对象的数据成员而且不能调用非const函数。为什么不能调用非const函数?因为非const函数可能修改数据成员,const成员函数是不能修改数据成员的,所以在const成员函数内只能调用const函数。...转载 2019-11-27 16:27:48 · 100 阅读 · 0 评论 -
C++模板深度解析(转)
http://qixinbo.info/2017/07/09/cplusplus-template/转载 2019-11-27 13:43:53 · 118 阅读 · 0 评论 -
简述C++多态与重载
多态分为: 特设型多态: 特设强制多态:特设强制多态中的强制指的是隐式转换这样的语义操作,这使得期望某一类型的地方允许出现不同的类型而不会导致错误。例如:int a = 1;float b = a; // a 被隐式转换为 float,b 初始化为转换而来的值(1.0f)float c = a + b; // a 被隐式转换为 floa...转载 2019-11-27 11:39:10 · 354 阅读 · 0 评论 -
C++ #与##
假定 class_name 是 CMyClass,那么 #class_name = “CMyClass”, #就是将参数变成字符串。而## 则是连接作用,是省略:ms_Info##class_name = ms_infoCMyClassStackoverflow上的例子: #include <stdio.h> #define f(a,b) a##b #define...转载 2019-11-25 18:08:13 · 6935 阅读 · 0 评论 -
C++库文件与头文件的区别
头文件中有函数的申明,库文件实现函数的定义。比如,printf函数。使用时应包括stdio.h,打开stdio.h你只能看到,printf这 个函数的申明,却看不到printf具体是怎么实现的,而函数的实现在相应的C库 中。而库文件一般是以二进制形式而不是C源文件形式提供给用户使用的。程序 中包括了stdio.h这个头文件。链接器就能根据头件中的信息找到printf这个函 数的实现并...转载 2019-11-23 14:29:03 · 1020 阅读 · 0 评论 -
C++知识结构图
转载 2018-09-08 22:30:13 · 1253 阅读 · 0 评论