yongshi123

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2009年5月4日

摘要: 在C++中的字符串用char Cstring[]或者TCHAR Ustring[]这样的数组来表示,而很多时候需要从一个指针把一个字符串复制到另一个指针中ASCII码中可以用到char *strcpy( char *strDestination, const char *strSource );如果是宽字符可以用wchar_t *wcscpy( wchar_t *strDestination, const wchar_t *strSource )。Strcpy和wcscpy都是把指针所指的字符串内容(注意只是内容)复制到另一个地址中。 阅读全文
posted @ 2009-05-04 22:11 yongshi123 阅读(418) 评论(0) 推荐(0) 编辑

摘要: 数组初始化: 我们经常声明一个数组就直接引用它 这样经常导致内存错误 一般数组的初始化有如下集中方式: 1.int a[10] = {0};或者char a[10] = {0}; //将数组每一项初始化为0 2.char a[10] = "abcedddddd"; //用一个字符串常量去初始化字符数组 注意: a[10] = "abcd"; //当字符常量长度不够时 数组的其他元素初始化为 'a' 阅读全文
posted @ 2009-05-04 22:09 yongshi123 阅读(1336) 评论(0) 推荐(0) 编辑

摘要: 1.要保留函数对指针所做的改变,可以通过使用该指针的指针作为该函数的形参,在函数中使用*Pointer=Pdata;这么一个方式来保留对该函数外指针的改变。如: void Function(int** Pointer){ int Pdata=5; * Pointer=&Pdata; } Int main() { int * Pointer; Function(&Pointer); } 阅读全文
posted @ 2009-05-04 21:56 yongshi123 阅读(717) 评论(0) 推荐(1) 编辑

摘要: 程序员们经常编写内存管理程序,往往提心吊胆。如果不想触雷,唯一的解决办法就是发现所有潜伏的地雷并且排除它们,躲是躲不了的。本文的内容比一般教科书的要深入得多,读者需细心阅读,做到真正地通晓内存管理。   1、内存分配方式   内存分配方式有三种:   (1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。   (2)在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。   (3) 从堆上分配,亦称动态内存分配。程序在运行的时候用malloc或new申请任意多少的内存,程序员自己负责在何时用free或delete释放内存。动态内存的生存期由我们决定,使用非常灵活,但问题也最多。 阅读全文
posted @ 2009-05-04 20:55 yongshi123 阅读(119) 评论(0) 推荐(0) 编辑