随笔分类 - c++
摘要:一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。下面是volatile变量的几个例子: 1). 并行设备的硬件寄存器(如:状态寄存器) 2). 一个中断服务子程序中会访问到的非自动变量(Non-automatic var...
阅读全文
摘要:相关函数:index, memchr, rindex, strpbrk, strsep, strspn, strstr表头文件:#include C/C++中的Split函数是strtok()其函数原型如下: char * strtok (char * str, const char * delimiters); 函数说明 strtok()用来将字符串分割成一个个片段。参数str指向欲分割的字符...
阅读全文
摘要:1.使用方法详解 在本文开始之处,先简要地说一下何为短字符和宽字符. 所谓的短字符,就是用8bit来表示的字符,典型的应用是ASCII码.而宽字符,顾名思义,就是用16bit表示的字符,典型的有UNICODE.关于windows下的ASCII和UNICODE的更多信息,可以参考这两本经典著作:《windows 程序设计》,《windows 核心编程》.这两本书关于这两种字符都有比较详细的解说....
阅读全文
摘要:一般认为在c中分为这几个存储区 1栈 - 有编译器自动分配释放 2堆 - 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收 3全局区(静态区),全局变量和静态变量的存储是放在一块的,初始化的全局变量和静 态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。 - 程序结束释放 4另外还有一个专门放常量的地方。 - 程序结束释放 在函数体中定义的变量通常是在栈上,...
阅读全文
摘要:1.const的用法: ...
阅读全文
摘要:DLL(Dynamic Link Library),动态链接库。 1.关于__declspec(dllimport)和__declspec(dllexport) 在一个DLL的编写过程中,如果要使一个变量、一个函数或一个类能够被外部程序调用,在函数声明上加上__declspec(dllimport)关键字。 例: 引出一个变量: __declspec(dllexport) int iEx; 引出...
阅读全文
摘要:STL编程的次要麻烦之一是虽然可以很容易地建立可以在一个平台上编译的软件,但在其它平台上则需要附加的#include指示。这个烦恼来自一个事实:C++标准(不像C标准)未能指定哪一个标准头文件必须或者可能被其他标准头文件#include。由于有了这样的灵活性,不同的实现就会选择去做不同的东西。 这在实践中意味着什么?我可以给你一些的概念。我使用了五个STL平台...
阅读全文
摘要:typedef 的用法 *****以下是参考部分***** 此部分参考自:http://blog.sina.com.cn/u/572f7666010008dm 用途一: 定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的多个对象。比如: char* pa, pb; // 这多数不符合我们的意图,它只声明了一个指向字符变量的指针, // 和一个字符变量; ...
阅读全文
摘要:在许多应用程序领域中,都需要控制小数点后的小数位,但是浮点数对此不能提供直接的支持。怎样对程序中的浮点数据进行"整齐"地格式化呢?在此我们有一个迂回的方法,先把它们转换为字符串,格式化后以文本形式显示出来。 在日常编程中--包括对话框、关系数据库、金融程序、SMS程序及一切处理数据文件的程序,需要控制小数点后的小数位的情况非常普遍,本文中将要讲解如何用简单的方法来控制小数位,另外...
阅读全文
摘要:先看一段代码: struct A; vector A_vect(5); for(int i = 0; i ::iterator it_A = A_vect.end()-1; for(; it_A != A_vect.begin(); ...
阅读全文
摘要:详细解说STL string 详细解说STL string 0 前言: string 的角色 1 string 使用 1.1 充分使用string 操作符 1.2 眼花缭乱的string find 函数 1.3 string insert, replac...
阅读全文
摘要:1。短整型(int) itoa(i,temp,10);///将i转换为字符串放入temp中,最后一个数字表示十进制 itoa(i,temp,2); ///按二进制方式转换 2。长整型(long) ltoa(l,temp,10); 3。浮点数(float,double) 用fcvt可以完成转换,这是MSDN中的例子: ...
阅读全文
摘要:C++程序员们经常编写内存管理程序,往往提心吊胆。如果不想触雷,唯一的解决办法就是发现所有潜伏的地雷并且排除它们,躲是躲不了的。本文的内容比一般教科书的要深入得多,读者需细心阅读,做到真正地通晓内存管理。 1、内存分配方式 内存分配方式有三种: (1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。 ...
阅读全文
摘要:Abstract std::string为library type,而int、double为built-in type,两者无法利用(int)或(double)的方式互转,本文提出轉換的方式。 Introduction 使用環境:Visual C++ 9.0 / Visual Studio 2008 Method 1: 使用C的atoi()與atof()。 先利用c_str()轉成C string...
阅读全文
摘要:下面是一些文件读写的例子: #include std::ifstream fin; fin.open("文件名"); while (!fin.eof()) { char* pChar =new char[255]; fin.getline(pChar,255);// 每一行就到pChar中去:) ...
阅读全文

浙公网安备 33010602011771号