- 博客(15)
- 资源 (14)
- 收藏
- 关注
原创 Linux下__attribute__((aligned(n)))的使用
关键字__attribute__允许你在定义struct、union、变量等类型时指定特殊属性。此关键字后面是跟着双括号括起来的属性说明。__attribute__不属于标准C语言,它是GCC对C语言的一个扩展用法。你可以在其关键字之前和之后使用"__"指定这些属性中的一个,这样允许你在头文件中使用这些属性,而不必担心可能的同名宏。例如你可以使用__aligned__代替aligned。 ...
2018-07-31 22:01:46 22809
原创 Linux下的内存对齐函数
在Linux下内存对齐的函数包括posix_memalign, aligned_alloc, memalign, valloc, pvalloc,其各个函数的声明如下:int posix_memalign(void **memptr, size_t alignment, size_t size);void *memalign(size_t alignment, size_t size);...
2018-07-30 21:14:31 5271 1
原创 C++中的内存对齐介绍
网上有很多介绍字节对齐或数据对齐或内存对齐的文章,虽然名字不一样,但是介绍的内容大致都是相同的。这里以内存对齐相称。注:以下内容主要来自网络。内存对齐,通常也称为数据对齐,是计算机对数据类型合法地址做出了一些限制,要求某种类型对象的地址必须是某个值K(通常使2、4、8、16、32或64)的倍数。现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开...
2018-07-29 13:24:23 3925 3
原创 C++/C++11中用于定义类型别名的两种方法:typedef和using
类型别名(type alias)是一个名字,它是某种类型的同义词。使用类型别名有很多好处,它让复杂的类型名字变得简单明了、易于理解和使用,还有助于程序员清楚地知道使用该类型的真实目的。在C++中,任何有效类型都可以有别名。有两种方法可用于定义类型别名:传统的方法是使用关键字typedef;C++11中规定了一种新的方法,使用别名声明(alias declaration)来定义类型的别名,即使用...
2018-07-28 11:45:28 16973
原创 C++中标准模板库std::vector的实现
以下实现了C++标准模板库std::vector的部分实现,参考了 cplusplus.关于C++中标准模板库std::vector的介绍和用法可以参考 https://blog.csdn.net/fengbingchun/article/details/51510916实现代码vector.hpp内容如下:#ifndef FBC_STL_VECTOR_HPP_#define FB...
2018-07-25 21:59:03 4749 7
原创 C++中标准库std::string的实现
以下实现了C++标准模板库中std::string中的部分实现,参考了cplusplus.关于C++中标准模板库std::string的介绍和用法可以参考: https://blog.csdn.net/fengbingchun/article/details/62417284 实现代码string.hpp如下:#ifndef FBC_STL_STRING_HPP_#define ...
2018-07-22 14:51:18 8102 4
原创 Linux下getopt_long函数的使用
getopt_long为解析命令行参数函数,它是Linux C库函数。使用此函数需要包含系统头文件getopt.h。getopt_long函数声明如下:int getopt_long(int argc, char * const argv[], const char *optstring, const struct option *longopts, int *longindex);...
2018-07-19 22:13:06 11036
原创 Linux下getopt函数的使用
getopt为解析命令行参数函数,它是Linux C库函数。使用此函数需要包含系统头文件unistd.h。getopt函数声明如下:int getopt(int argc, char * const argv[], const char * optstring);其中函数的argc和argv参数通常直接从main的参数直接传递而来。optstring是一个包含合法选项字符的字符串。如...
2018-07-19 21:18:36 7823
原创 Windows与Linux之间互传文件的方法
以下方法均是以Windows为操作机: 1. 通过WinSCP: WinSCP是一款开源的SFTP客户端,运行于Windows系统下,遵照GPL发布。WinSCP除了SFTP,还支持SSH、SCP(SecureCopy Protocol)。WinSCP的开发始于2000年4月,由布拉格经济大学所发展与维护,基于PuTTY的SSH实现,支持SSH1、SSH...
2018-07-13 18:15:45 169506 31
原创 C++中标准模板库std::pair的实现
以下用C++实现了标准模板库中的std::pair实现,参考了 cplusplus 和 vs2013中的utility文件。 关于std::pair的介绍和用法可以参考: https://blog.csdn.net/fengbingchun/article/details/52205149 实现代码pair.hpp如下:#ifndef FBC_STL_...
2018-07-12 20:51:58 2810
原创 GCC编译选项参数介绍
gcc和g++分别是gnu的c和c++编译器,下面是整理的常用编译选项参数:#(1). -x: 设定文件所使用的语言,使文件后缀名无效,如下,执行完后生成test.ogcc -c -x c++ test.jpg#(2). -c: 只编译生成目标文件即*.o,只编译不链接生成可执行文件,如下,执行完后生成test.ogcc -c test.cpp#(3). -S: 把文件编译...
2018-07-08 17:30:36 9658
原创 GNU AWK中BEGIN/END使用举例
以下是使用gnu awk将test.cpp文件拆分成两个文件a.cpp和b.cpp,其中b.cpp仅存放test.cpp中的数据,其它内容存放在a.cpp文件中。 test.cpp内容如下:#include <stdio.h>#include <iostream>#include <string>int main(){ ...
2018-07-08 13:14:20 1872
原创 吴恩达老师深度学习视频课笔记:神经风格迁移(neural style transfer)
什么是神经风格迁移(neural style transfer):如下图,Content为原始拍摄的图像,Style为一种风格图像。如果用Style来重新创造Content照片,神经风格迁移可以帮你生成Generated图像。 深度卷积网络在学什么:如下图,假如训练了一个Alex卷积神经网络,为了看到不同层之间隐藏单元的计算结果,可以这样做,从第一层的隐藏单元开始,将...
2018-07-05 21:32:00 4727
原创 吴恩达老师深度学习视频课笔记:人脸识别
什么是人脸识别:人脸验证和人脸识别的区别,如下图: One-shot learning:人脸识别所面临的挑战就是需要解决一次学习(one-shot learning)问题。这意味着在绝大多数人脸识别应用中你需要通过单单一张图像或者单单一个人脸图像就能去识别这个人,因为大多数人脸识别系统中每个人可能只有一张图像。要让人脸识别能够做到一次学习,需要做的是学习相似(simi...
2018-07-03 21:38:10 5901 2
原创 C/C++中static关键字用法汇总
1. 函数内static局部变量:变量在程序初始化时被分配,直到程序退出前才被释放,也就是static是按照程序的生命周期来分配释放变量的,而不是变量自己的生命周期。多次调用,仅需一次初始化。 2. cpp内的static全局变量:只在cpp内有效。在不同的cpp文件中定义同名变量,不必担心命名冲突。保持变量内容的持久。 3. 头文件内的static全局...
2018-07-01 15:56:27 3876
软件自动更新_base64编解码_xml文件的生成与读取
2010-08-26
PDF417二维条码基础理论
2010-08-15
小波矩特征提取matlab代码
2010-07-24
在win mobile中如何使正在运行的软件自动升级更新
2010-07-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人