c/c++
文章平均质量分 72
炎枫coeus
这个作者很懒,什么都没留下…
展开
-
内存字节对齐
写出一个struct,然后sizeof,你会不会经常对结果感到奇怪?sizeof的结果往往都比你声明的变量总长度要大,这是怎么回事呢?讲讲字节对齐吧. /******************************分割线 如果体系结构是不对齐的,A中的成员将会一个挨一个存储,从而sizeof(a)为11。显然对齐更浪费了空间。那么为什么要使用对齐呢? 体系结构的对齐和不对齐转载 2013-01-26 14:31:50 · 384 阅读 · 0 评论 -
gtest使用
找了好多文章,发现这篇是讲得最简便、正确的!以下为复制&粘贴的: [cpp] view plaincopyVS2010 gtest简易配置 使用一个简单的控制台来演示。 1.下载google test http://code.google.com/p/googletest/downloads/detail?name=gtest-1.6.0.zip&can=2&q= 2.解压,寻找目录转载 2014-06-14 16:51:15 · 670 阅读 · 0 评论 -
vs2010 使用pthread进行多线程编程
1、下载相应的文件 到https://sourceware.org/pthreads-win32/转载 2014-06-23 15:53:58 · 4106 阅读 · 0 评论 -
C/C++表达式求值顺序
转载:http://bbs.csdn.net/topics/370153775 裘宗燕转载 2014-05-22 09:29:05 · 539 阅读 · 0 评论 -
ASCII码,Unicode和UTF-8
1. ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从0000000到11111111。 上个世纪60年代,美国制定了一套字符编码,对英语字符与转载 2014-01-02 19:59:38 · 506 阅读 · 0 评论 -
虚函数
一, 什么是虚函数(如果不知道虚函数为何物,但有急切的想知道,那你就应该从这里开始) 简单地说,那些被virtual关键字修饰的成员函数,就是虚函数。虚函数的作用,用专业术语来解释就是实现多态性(Polymorphism),多态性是将接口与实现进行分离;用形象的语言来解释就是实现以共同的方法,但因个体差异而采用不同的策略。下面来看一段简单的代码 class A{ public: void转载 2013-12-04 10:10:13 · 430 阅读 · 0 评论 -
虚函数与虚继承
虚函数与虚继承寻踪 封装、继承、多态是面向对象语言的三大特性,熟悉C++的人对此应该不会有太多异议。C语言提供的struct,顶多算得上对数据的简单封装,而C++的引入把struct“升级”为class,使得面向对象的概念更加强大。继承机制解决了对象复用的问题,然而多重继承又会产生成员冲突的问题,虚继承在我看来更像是一种“不得已”的解决方案。多态让对象具有了运行时特性,并且它是软件设计复用的转载 2013-12-11 19:39:49 · 475 阅读 · 0 评论 -
在C++中如何使用C
首先,分析下面的代码片段: // Demo.h #ifndef SRC_DEMO_H #define SRC_DEMO_H extern "C" { ... // do something } #endif // SRC_DEMO_H 显然,头文件中的编译宏“#ifndef SRC_DEMO_H、#define SRC_DEMO_H、#endif”的作用是防止该头文件被转载 2013-12-04 09:35:08 · 920 阅读 · 0 评论 -
C语言嵌入式系统编程修炼之道——软件架构篇
1.模块划分 模块划分的“划”是规划的意思,意指怎样合理的将一个很大的软件划分为一系列功能独立的部分合作完成系统的需求。C语言作为一种结构化的程序设计语言,在模块的划分上主要依据功能(依功能进行划分在面向对象设计中成为一个错误,牛顿定律遇到了相对论),C语言模块化程序设计需理解如下概念: (1) 模块即是一个.c文件和一个.h文件的结合,头文件(.h)中是对于该模块接口的声明;转载 2013-01-26 20:25:39 · 574 阅读 · 0 评论 -
《C语言核心技术》笔记-----声明
在表达式使用标示符之前,编译器需要知道此标示符的所有特性,因此,每个翻译单元都必须包含所用到的每个标示符的声明。声明标示符之后,就可以在它的作用域中使用此标示符了。对象和函数的标示符有文件作用域和语句块作用域之分。 存储类型修饰符会改变标示符的链接和相应对象的生存周期。 auto 自动 static\extern 对链接是有影响的同时它们声明的变量具有静态生存周期。 regis原创 2013-01-26 16:14:11 · 565 阅读 · 0 评论 -
C语言嵌入式系统编程修炼之道——内存操作篇
1.数据指针 在嵌入式系统的编程中,常常要求在特定的内存单元读写内容,汇编有对应的MOV指令,而除C/C++以外的其它编程语言基本没有直接访问绝对地址的能力。在嵌入式系统的实际调试中,多借助C语言指针所具有的对绝对地址单元内容的读写能力。以指针直接操作内存多发生在如下几种情况: (1) 某I/O芯片被定位在CPU的存储空间而非I/O空间,而且寄存器对应于某特定地址; (2)转载 2013-01-26 20:26:26 · 684 阅读 · 0 评论 -
vs2010查看类的布局
步骤如图所示原创 2014-06-20 10:37:08 · 852 阅读 · 0 评论