- 博客(4)
- 资源 (2)
- 收藏
- 关注
原创 结构体和类的字节对齐
编译器为了优化运行效率,对于结构体和类的成员访问会进行字节填充,即字节对齐。在这之前,我们需要知道如下基本信息:1 C++中,类和结构体并没有本质的区别。只是默认的访问权限不同。2 类和结构体的大小都是数据成员的大小,而不包括累成员函数的大小。3 空的类或者空的结构体的大小都为1,而不是0。目前是编译器能够对其进行寻址定位。字节对齐通常是已结构体中占用空间最大的一个成员进行
2016-08-30 14:17:43 435
原创 二分查找的递归和非递归实现(C++函数模版)
递归和迭代是编程中的基本思想。这里通过递归和迭代实现二分查询。 templateint BinarySearchRecursion(T data[],T element,int start,int end){ if(start end) { return -1; } int mid = (start+end)/2; if(element == data[m
2016-08-28 20:29:54 936
原创 一步步通过命令行cl.exe编译Windows程序
Windows系统下有强大的IDE工具VS,VC6.0等,隐藏了很多编译和链接的细节。 事实上,VS是通过调用cl.exe进行源代码编译。接着调用link.exe进行目标文件的链接等操作。 有时候,如果出现编译或者链接错误,我们也可以通过命令行工具,调用这些编译和链接程序,可以更好的理解和分析程序的运行机制,解决问题。 在我本机上,这些可执行文件在 C:\Program
2016-08-26 14:51:31 15610
原创 Ubuntu下使用串口打印
Ubuntu下的打印是基于CUPS框架的。默认情况下,在打印机的配置界面看不到串口,哪怕打印机通过串口已经连接了Ubuntu。 使用串口打印,需要先开启串口的访问权限。命令如下: sudo chmod a+rw /dev/ttyS0 执行该命令,表示开放COM1的权限 sudo chmod a+rw /dev/ttyS1 执行该命令,表示开放C
2016-08-16 15:50:47 2794
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人