在C/C++中经常会遇到对一段固定的连续内存进行拷贝操作, 这时候我们就需要用到 <cstring> 头文件 中的 memcpy 函数。 具体使用如下: 其中 , y 为 拷贝到的内存段 开始地址, x 为 从拷贝一方的 内存段 开始地址。 第三个参数为拷贝的内存字节数,这里采用 sizeof 对类 ...
分类:
编程语言 时间:
2017-01-25 17:43:49
阅读次数:
273
首先看一段代码 我跑在ubuntu16.04, 输出的结果是: 但是同样的程序跑在ubuntu14.04的虚拟机上,运行的结果是: mempcy 组内拷贝看起来是不安全的。需要进一步研究。 不同的公司对于stdlib function的实现不同,像这种内存重叠的拷贝需要使用api memmove() ...
分类:
编程语言 时间:
2017-01-19 12:01:29
阅读次数:
252
啥是POD类型? POD全称Plain Old Data。通俗的讲,一个类或结构体通过二进制拷贝后还能保持其数据不变,那么它就是一个POD类型。 平凡的定义 1.有平凡的构造函数 2.有平凡的拷贝构造函数 3.有平凡的移动构造函数 4.有平凡的拷贝赋值运算符 5.有平凡的移动赋值运算符 6.有平凡的 ...
分类:
编程语言 时间:
2017-01-11 13:04:28
阅读次数:
283
我这里要讲的并不是IPC中的消息队列,我要讲的是在进程内部实现自定义的消息队列,让各个线程的消息来推动整个进程的运动。进程间的消息队列用于进程与进程之间的通信,而我将要实现的进程内的消息队列是用于有序妥当处理来自于各个线程请求,避免一窝蜂的请求而导致消息的异常丢失。想想socket编程里的liste ...
分类:
系统相关 时间:
2017-01-09 21:44:00
阅读次数:
266
作者:rendao.org,版权声明,转载必须征得同意。 内存越界,变量被篡改 memset时长度参数超出了数组长度,但memset当时并不会报错,而是操作了不应该操作的内存,导致变量被无端篡改 还可能导致内存越界的函数有memset、memcpy、memmove、strcpy、strncpy、st ...
分类:
编程语言 时间:
2017-01-05 07:56:14
阅读次数:
519
caffe的配置过程 caffe的配置过程 转:http://blog.csdn.net/brightming/article/details/51106629 转:http://blog.csdn.net/brightming/article/details/51106629 版权声明:本文为博主 ...
分类:
其他好文 时间:
2017-01-04 11:50:47
阅读次数:
8463
http://codeforces.com/problemset/problem/747/C 题意:有n台机器,q个操作。每次操作从ti时间开始,需要ki台机器,花费di的时间。每次选择机器从小到大开始,如果可以完成任务,那么输出id总和,否则输出-1. 思路:简单的模拟,注意如果不能完成任务,那么 ...
分类:
其他好文 时间:
2016-12-31 22:50:40
阅读次数:
237
Argument Access(参数访问):变长参数列表。这个模块提供了三个宏:va_arg、va_end和va_start,用来实现变长参数列表的访问。 Buffer Manipulation(内存操作):按字节处理内存区域。主要函数:memcpy、memmove、memset等。 Byte cl ...
分类:
其他好文 时间:
2016-12-25 23:27:50
阅读次数:
195
2555: SubString Description 懒得写背景了,给你一个字符串init,要求你支持两个操作 (1):在当前字符串的后面插入一个字符串 (2):询问字符串s在当前字符串中出现了几次?(作为连续子串) 你必须在线支持这些操作。 懒得写背景了,给你一个字符串init,要求你支持两个操 ...
分类:
其他好文 时间:
2016-12-20 23:15:51
阅读次数:
249
题意:给n个数,每次询问a,b,c,d,你要选定一个区间使得该区间中位数最大,其中a,b为区间左端点可选范围,c,d同理。 OTZ陈老师出的神题。 先考虑一个简单问题:只有一个询问的情况。此时我们二分中位数,并且将区间内小中位数的数标为-1,大于的标为1,此时区间最大和如果大等0,则说明中位数可以变 ...
分类:
其他好文 时间:
2016-12-20 16:07:14
阅读次数:
362