
C/C++
ktx12
这个作者很懒,什么都没留下…
展开
-
C语言--结构体中的指针
今天来讨论一下C中的内存管理。记得上周在饭桌上和同事讨论C语言的崛起时,讲到了内存管理方面我说所有指针使用前都必须初始化,结构体中的成员指针也是一样有人反驳说,不是吧,以前做二叉树算法时,他的左右孩子指针使用时难道有初始化吗那时我不知怎么的想不出理由,虽然我还是坚信要初始化的过了几天这位同事说他试了一下,结构体中的成员指针不经过初始化是可以用(左子树和右子树指针)那...2009-12-06 23:44:58 · 838 阅读 · 1 评论 -
volatile类型修饰符的使用
尽管C和C++标准对于线程都明显的“保持沉默”,但它们以volatile关键字的形式,确实为多线程保留了一点特权。 就象大家更熟悉的const一样,volatile是一个类型修饰符(type modifier)。它是被设计用来修饰被不同线程访问和修改的变量。如果没有volatile,基本上会导致这样的结果:要么无法编写多线程程序,要么编译器失去大量优化的机会。下面我...原创 2009-08-11 09:13:13 · 222 阅读 · 0 评论 -
提取子字符串的函数
[code="c"]char *GetToken(char *sOrg,char *sSplt) { char *str1,*str2; static char str[255]; str1=strstr(sOrg,sSplt); if (str1==NULL) { strcpy(str,sOrg); ...原创 2009-08-18 09:53:07 · 286 阅读 · 0 评论 -
STL容器的基本特性和特征
1. STL有6种序列容器类型 (1)vector 它提供对元素的随即访问,在尾部添加和删除元素的时间是固定的,在头部或中部插入和删除元素的复杂度为线性时间。 (2)deque 在文件中声明。 是双端队列,支持随即访问。从deque的开始与末尾位置插入和删除元素的时间是固定的。 尽管vector和deque都提供对元素的随机访问和在序列中部执行线性时间的插入和删除操作,...原创 2009-08-20 19:23:05 · 164 阅读 · 0 评论 -
STL中容器的比较
在STL中基本容器有[b]string vector list deque set map [/b][b]set [/b]和[b]map[/b]都是无序的保存元素只能通过它提供的接口对里面的元素进行访问 [b]set [/b]集合, 用来判断某一个元素是不是在一个组里面使用的比较少 [b]map [/b]映射相当于字典把一个值映射成另一个值如果想创建字典的话使用它好了 ...原创 2009-08-20 19:36:41 · 103 阅读 · 0 评论 -
Vector用法
线性结构中的顺序表有三种,向量,栈和队列栈和队列在很多数据结构的书中都有论述到。 唯独向量这一种顺序表很少现在记录下vector的用法先来C++,有关Vector类vector 抽象容器类型之一(还有list和deque等),与其他几种容器类型不同的是它高效支持随机访问其中的元素。使用vector,首先必须调用头文件(#include)它的声明和初始化是这样的v...原创 2009-08-20 20:13:28 · 262 阅读 · 0 评论 -
VC6制作的走势图绘制功能函数
对于某些网络股票软件比如各大门户网上都有的股票查看功能其中的价格走势图和成交量图的实时绘制是一大亮点我在VC里实践了下,绘走势图的函数如下(由于程序里只是读取链表,计算处理结点数据然后绘点连线,耗费CPU时间较少,所以没有用双缓冲方法如果是绘制位图,一般都要采用双缓冲方法防止刷新时闪屏)[code="c++"]void CDrawRealLine::DrawReal...2009-08-27 19:54:42 · 288 阅读 · 0 评论 -
一个不可见字符
“ ”,用ASCII码查看的小软件看了一下,编码41376。就是汉字范围的编码了就是这个字符让程序处理错了一笔。这个其实是空格, 全角空格。中文和英文的半角空格,全角空格都是相等的编码半角空格是普通的32,全角空格41376注意处理一下程序,小问题真的搞死人。...原创 2010-09-06 17:39:25 · 168 阅读 · 0 评论