
C++
文章平均质量分 66
ray_zhang_3
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
堆栈入门——堆和栈区别
在计算机领域,堆栈是一个不容忽视的概念,我们编写的C语言程序基本上都要用到。但对于很多的初学着来说,堆栈是一个很模糊的概念。堆栈:一种数据结构、一个在程序运行时用于存放的地方,这可能是很多初学者的认识,因为我曾经就是这么想的和汇编语言中的堆栈一词混为一谈。我身边的一些编程的朋友以及在网上看帖遇到的朋友中有好多也说不清堆栈,所以我想有必要给大家分享一下我对堆栈的看法,有说的不对的地方请朋友们不吝赐教转载 2009-09-23 08:54:00 · 684 阅读 · 1 评论 -
从一道IBM的笔试题看编码规范
char* fun1() { coutchar* fun2() { coutchar* fun3() { cout int main(int argc, char* argv[]){ cout return 0;}屏幕输出是多少?cbam111为什么不是abcm111呢?或者是ma1b1c1呢? 其实问题的实质上述同一转载 2009-11-29 15:07:00 · 357 阅读 · 0 评论 -
预处理,编译, 优化, 汇编, 链接
编译,编译程序读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码,再由汇编程序转换为机器语言,并且按照操作系统对可执行文件格式的要求链接生成可执行程序。 C源程序头文件-->预编译处理(cpp)-->编译程序本身-->优化程序-->汇编程序-->链接程序-->可执行文件 1.编译预处理读取c源程序,对其中的伪指令(以#开头的指令)和特殊符号进行处理伪指令主要原创 2010-03-01 19:38:00 · 637 阅读 · 0 评论 -
C/C++关键字static,const,inline,define,typedef
最近面试c++,被问到的一个问题:inline和define区别?然后在网上找了下面的一个回答,看了之后,恍然大悟,原来c++中的const和inline是为了替代c中的#define,取长补短啊。 首先#define的长处就是,其使用的是预编译器,是将变量保存在预编译的符号表中的,使用高效;缺点就是,不能做参数检测。而const和inline分别是针对变量和函数的#define的转载 2010-03-01 19:08:00 · 663 阅读 · 0 评论 -
error LNK2005:XXXX already defined in XXX.lib
==============================================================The problem was because of different Run-Time library settings.当前工程和Lib工程使用的Run-Time library 不一致。 这些选项选择单线程或多线程运行时例程,指示多线程模块是否为转载 2010-03-10 13:07:00 · 572 阅读 · 0 评论 -
Visual C++线程同步技术剖析 (转载)
使线程同步事件:ResetEvent设置对象不允许线程通过,SetEvent是允许线程通过;同时只允许一个线程,并且提供在线程结束后手动释放和自动释放两种释放方法。信号量:同时允许多个线程进入,保持一个计数器,创建信号量是初始化这个计数器。互斥体Mutex:只允许一个线程,需手动释放:CreateMutex/ReleaseMutex临界区(排斥区):效率更高,只允许一个线程。I转载 2010-01-03 17:11:00 · 511 阅读 · 0 评论 -
Visual C++ MFC 一文说尽
Visual C++ MFC 一文说尽 (推荐)(很长,没耐心就不要看了) 第一部分:MFC导论 Visual C++ 不仅仅是一个编译器。它是一个全面的应用程序开发环境,使用它你充分 利用具有面向对象特性的 C++ 来开发出专业级的 Windows转载 2010-01-03 16:41:00 · 600 阅读 · 0 评论 -
Unicode下CString与char *转换
在Visual C++.NET2005中,默认的字符集形式是Unicode,但在VC6.0等工程中,默认的字符集形式是多字节字符集(MBCS:Multi-Byte Character Set),这样导致在VC6.0中非常简单实用的各类字符操作和函数在VS2005环境下运行时会报各种各样的错误,这里总结了在Visual C++.NET2005环境中Unicode字符集下CString和char *之转载 2010-03-22 16:42:00 · 382 阅读 · 0 评论 -
reinterpret_cast的使用和delete[] 如何知道数组的大小
int size = 0; cin >> size; char* arr = new char[size]; arr[0]=c; int i = reinterpret_cast(arr);//137000 char c = *reinterpret_cast(i);//c cout cout(reinterpret_cast(arr) - sizeof(int)*4)delete[原创 2010-05-15 13:04:00 · 1554 阅读 · 2 评论