自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(67)
  • 资源 (1)
  • 收藏
  • 关注

原创 string copy on write

#include<iostream>#include<string>#include<cstdio>using namespace std; main(){ string str1 = "hello world"; string str2 = str1; string str3 = str2; ...

2018-09-18 20:17:44 150

原创 获取本地IP

inline uint32_t getLocalIP(){ int sock_fd; struct ifreq buf[16]; struct ifconf ifc; uint32_t interface_num; uint32_t loIp = inet_addr("127.0.0.1"); uint32_t localIp = 0; if((sock_fd = ...

2018-08-24 10:05:15 172

原创 获取系统毫秒时间的两种方法

unsigned long clockGetTimeHaoMiao2(){ struct timespec stv; clock_gettime(CLOCK_MONOTONIC, &stv); unsigned longt haoMiao = stv.tv_sec * 1000 + stv.tv_nsec /1000000; return haoMiao...

2018-08-17 15:23:56 2700

原创 获取本地ip地址信息

#include<stdio.h>#include <sys/ioctl.h>#include<netinet/in.h>#include<net/if.h>#include <arpa/inet.h>#include <sys/socket.h>#include <unistd.h>#includ

2018-08-17 15:18:04 154

原创 获取毫秒时间戳

unsigned long clockGetTimeHaoMiao(){ struct timespec stv; clock_gettime(CLOCK_MONOTONIC, &stv); unsigned long haoMiao = stv.tv_sec * 1000 + stv.tv_nsec /1000000; return haoMiao;...

2018-08-10 15:54:36 739

原创 c++ 大小写转换类

void to_upper(std::string &str){ for(std::string::iterator it = str.begin(); it != str.end(); it++) *it = toupper(*it);}void to_lower(std::string &str){ for(std::string::...

2018-08-01 15:25:23 797

原创 c++ split工具类,切分字符

void split(const std::string& s, const std::string& delim, std::vector<std::string> &ret){ size_t last = 0; size_t index=s.find_first_of(delim,last); ret.clear(); w...

2018-08-01 15:23:14 92

原创 c++ trim类,去掉空格

std::string trim(std::string& str){ if(str.empty()) return std::string(); size_t s,e; for(s =0; s < str.length();s++){ if(!isspace(str.at(s))) break; } for(e = str.length()-1; ...

2018-08-01 15:11:42 693

原创 C++ map注意事项

C++ map注意事项1、在map中,由key查找value时,首先要判断map中是否包含key。2、如果不检查,直接返回map[key],可能会出现意想不到的行为。如果map包含key,没有问题,如果map不包含key,使用下标有一个危险的副作用,会在map中插入一个key的元素,value取默认值,返回value。也就是说,map[key]不可能返回null。3、map提供了两

2017-09-12 10:48:47 196

转载 IO多路复用之select总结

http://www.cnblogs.com/Anker/archive/2013/08/14/3258674.html点击打开链接

2017-09-12 09:56:31 170

原创 C++中的static关键字的总结

点击打开链接

2017-07-31 15:18:46 164

原创 关于C++ const 的全面总结

关于C++ const 的全面总结点击打开链接

2017-07-31 14:59:34 180

原创 C++成员函数在内存中的存储方式

C++成员函数在内存中的存储方式点击打开链接

2017-07-31 10:56:45 234

原创 更改Ubuntu gcc、g++默认编译器版本

首先,看一下你的Ubuntu都装了哪些版本的gcc 用命令:ls /usr/bin/gcc* -l  我的显示是lrwxrwxrwx 1 root root      7 2011-08-14 15:17 /usr/bin/gcc -> gcc-4.6-rwxr-xr-x 1 root root 224544 2011-10-06 05:47 /usr/bin/gcc-4.

2017-07-18 11:42:15 395

原创 gcc编译器 CFLAGS 标志参数说明

gcc编译器 CFLAGS 标志参数说明 点击打开链接

2017-07-17 12:08:06 602

原创 序列化和反序列化

1、序列化:1)序列化概念:程序员在编写应用程序的时候往往需要将程序的某些数据存储在内存中,然后将其写入某个文件或是将它传输到网络中的另一台计算机上以实现通讯。这个将程序数据转化成能被存储并传输的格式的过程被称为“序列化”(Serialization),而它的逆过程则可被称为“反序列化” (Deserialization)。简单来说,序列化就是将对象实例的状态转换为可保持或传输的格式的过程

2017-07-15 11:07:55 280

原创 c++访问权限的控制

不同继承方式的影响主要体现在:1、派生类成员对基类成员的访问控制。2、派生类对象对基类成员的访问控制。三种继承方式:1、公有继承(public)① 基类的public和protected成员的访问属性在派生类中保持不变,但基类的private成员不可访问。② 派生类中的成员函数可以直接访问基类中的public和protected成员,但不能访问基类的private成员。

2017-07-15 10:28:57 262

原创 注意stringstream.str()临时变量的lifecycle

注意stringstream.str()临时变量的lifecycle点击打开链接

2017-06-23 16:32:29 178

原创 C++类型转换函数(类型转换运算符函数)

点击打开链接

2017-06-19 18:06:01 194

原创 C++函数参数中的省略号用法分析

参考其他博客

2017-06-19 10:29:28 447

原创 头文件重复包含和变量重复定义

参考该博客

2017-06-16 14:13:22 238

原创 父类子类指针相互转换问题

参考下面两篇博客点击打开链接点击打开链接

2017-06-15 12:02:55 251

原创 stringstream的用法

有待完善

2017-06-12 14:11:20 160

原创 超线程技术

有待完善

2017-06-09 10:44:58 162

原创 load average

linux load average参考此条博客:load average详解

2017-06-09 10:07:28 162

原创 gcc/g++在执行编译工作的时候具体步骤

gcc/g++在执行编译工作的时候,分为以下四个过程:1.预处理,生成.i的文件2.将预处理后的文件转换成汇编语言,生成.s文件3.汇编变为目标代码(机器代码)生成.o的文件4.连接目标代码,生成可执行程序参考这篇博客

2017-06-07 20:41:29 236

原创 c++中reverse和resize的区别

reserve是容器预留空间,但并不真正创建元素对象,在创建对象之前,不能引用容器内的元素,因此当加入新的元素时,需要用push_back()/insert()函数。resize是改变容器的大小,并且创建对象,因此,调用这个函数之后,就可以引用容器内的对象了,因此当加入新的元素时,用operator[]操作符,或者用迭代器来引用元素对象。再者,两个函数的形式是有区别的,reserve函

2017-06-07 14:28:31 1838 1

原创 memset是对字节赋值

如下demo是可以的,能把数组中的元素值都设置成字符1,#include #include using namespace std;int main(){    char a[5];    memset(a,'1',5);    for(int i = 0;i       cout    system("pause");    return 0;}

2017-06-06 11:31:36 653

原创 数组的一些常见问题

数组求和求数组的最大值和最小值求数组的最大值和次大值求数组中出现次数超过一半的元素求数组中元素的最短距离求两个有序数组的共同元素求三个数组的共同元素找出数组中唯一的重复元素找出出现奇数次的元素求数组中满足给定和的数对最大子段和最大子段积数组循环移位字符串逆序组合问题合并两个数组重排问题找出绝对值最小的元素

2017-06-05 19:51:42 232

原创 大小端字节序存在的意义,为什么不用一个标准呢?

大小端问题主要涉及的是非单字节非字符串外的其余数据的表示和传递,如short型、int型等。大端和小端有其各自的优势。我们知道计算机正常的内存增长方式是从低到高(当然栈不是),取数据方式是从基址根据偏移找到他们的位置,从他们的存储方式可以看出,大端存储因为第一个字节就是高位,从而很容易知道它是正数还是负数,对于一些数值判断会很迅速。而小端存储 第一个字节是它的低位,符号位在最后一个字节,这样在做数

2017-05-15 20:04:35 757

原创 软硬连接

软连接。对于版本的发布,version-》version1                                                 version-》version2,对用户无感知,而且节约空间。硬连接,比较浪费空间,但是有备份的作用。

2017-05-02 19:57:42 220

原创 视频直播技术介绍

点击打开链接

2017-04-24 08:56:09 485

原创 SSH/TLS

http://zkread.com/article/1210036.html

2017-04-20 14:03:53 704

原创 telnet和ssh的区别

telnet和ssh的区别

2017-04-19 20:09:00 2419

原创 静态成员必须类外初始化

在C++中,类的静态成员(static member)必须在类内声明,在类外初始化,像下面这样。 class A{ private: static int count ; // 类内声明};int A::count = 0 ; // 类外初始化,不必再加static关键字因为静态成员属于整个类,而不属于某个对象,如果在类内初始化,会导致每个对象都包含该静态成员,这不

2017-03-29 21:52:38 383

转载 c++中四种强制转换简析

c++中的转换分为隐式转换和显示转换四种,本文将重点介绍四种显示转换。可以参看这篇博文

2017-03-29 21:36:56 180

原创 虚函数与纯虚函数

c++中多态介绍C++的多态性用一句话概括就是:在基类的函数前加上virtual关键字,在派生类中重写该函数,运行时将会根据对象的实际类型来调用相应的函数。如果对象类型是派生类,就调用派生类的函数;如果对象类型是基类,就调用基类的函数1:用virtual关键字申明的函数叫做虚函数,虚函数肯定是类的成员函数。 2:存在虚函数的类都有一个一维的虚函数表叫做虚表,类的对象有一个指向虚表开始的虚指针。

2017-03-28 21:28:43 126

原创 系统调用和库函数

系统调用在计算机中,系统调用(英语:system call),又称为系统呼叫,指运行在使用者空间的程序向操作系统内核请求需要更高权限运行的服务。 系统调用提供了用户程序与操作系统之间的接口。大多数系统交互式操作需求在内核态执行。如设备IO操作或者进程间通信。库函数库函数是在系统调用上的一层包装,运行在用户态(user mode),打个比方,库函数相当于包工头,系统调用是工人,我们可以自己找工人分任务

2017-03-28 21:21:00 207

原创 c++中strlen和seizeof的比较

1、strlen的介绍1. strlen是函数,它的结果要在运行的时候才能计算出来,用来计算字符串的长度,不是类型占内存的大小。2、sizeof的介绍sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。该类型保证能容纳实现所建立的最大对象的字节大小。后续有其他问题继续补充。。。

2017-03-22 15:32:46 1361

原创 c++中vector的一些知识

使用原则:尽量使用vector代替C风格的数组或者CArray;尽量使用算法代替手工写的循环;尽量使用vector本身的函数代替其他泛型算法;填充vector如果我们想用原始数组的内容填充vector,那么有很多种方式。下面来展示下vector的几个方法。 例如我们有数组int v1[10] = {0,1,0,0,3,0,0,4,4,4};初始化方式1: vector<int> v

2017-03-22 11:20:00 150

c语言实现大整数加减

c语言实现大整数加减法,简单但是功能齐全

2014-08-16

空空如也

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

TA关注的人

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