随笔 - 169,  文章 - 0,  评论 - 45,  阅读 - 225万
04 2012 档案
逆波兰表达式
摘要:逆波兰表达式表达式一般由操作数(Operand)、运算符(Operator)组成,例如算术表达式中,通常把运算符放在两个操作数的中间,这称为中缀表达式(Infix Expression),如A+B。波兰数学家Jan Lukasiewicz提出了另一种数学表示法,它有两种表示形式:把运算符写在操作数之前,称为波兰表达式(Polish Expression)或前缀表达式(Prefix Expression),如+AB;把运算符写在操作数之后,称为逆波兰表达式(Reverse Polish Expression)或后缀表达式(Suffix Expression),如AB+;其中,逆波兰表达式在编译技 阅读全文
posted @ 2012-04-23 15:58 wanghetao 阅读(36747) 评论(3) 推荐(7) 编辑
GPU、CPU:不止一字之差那么简单
摘要:1. 引言 自1999年NVIDIA提出GPU的概念以来,GPU的高浮点运算能力引发了不少的话题,比如GPU将取代CPU。基于GPU的特殊性,研究人员正在从事相关方面的研究,以期充分地利用GPU高运算速度。 随着计算机图形处理硬件的又一次升级,即计算机图形处理器的升级。图形处理器的应用已成为热门的课题。 2. GPU的功能 GPU(Graphic ProcessingUnit)即图形处理器。1999年NVIDIA公司发布GeForce 256图形处理芯片时,首先提出GPU的概念。一块标准的GPU主要包括2D单元、3D单元、视频处理单元、FSAA(Full Scene Anti—alia... 阅读全文
posted @ 2012-04-15 16:52 wanghetao 阅读(1516) 评论(0) 推荐(0) 编辑
迷途指针,从百度百科上摘抄的,语言很幽默
摘要:迷途(stray)指针,也被称为野(wild)指针或悬浮(dangling)指针,是指将delete 用于指针(从而释放它指向的内存),但没有将它设置为空时引发。如果随后你在没有重新赋值的情况下使用该指针,后果将是不可预料的:程序崩溃算你走运。 这个程序故意创建了一个迷途指针: typedef unsigned short int USHORT; #include <iostream> int main () { USHORT *pInt = new USHORT ; *pInt = 10 ; std::cout << "pInt:" << 阅读全文
posted @ 2012-04-04 16:09 wanghetao 阅读(393) 评论(0) 推荐(0) 编辑
C++中const总结
摘要:C++中const总结一:对于基本声明1.const int r=100;//标准const变量声明加初始化,因为默认内部连接所以必须被初始化,其作用域为此文件,编译器经过类型检查后直接用100在编译时替换.2.extend const int r=100;//将const改为外部连接,作用于扩大至全局,编译时会分配内存,并且可以不进行初始化,仅仅作为声明,编译器认为在程序其他地方进行了定义.3.const int r[]={1,2,3,4};struct S {int a,b;};const S s[]={(1,2),(3.4)};//以上两种都是常量集合,编译器会为其分配内存,所以不能在编 阅读全文
posted @ 2012-04-04 15:00 wanghetao 阅读(467) 评论(0) 推荐(2) 编辑
sizeof和sizeof(string)的问题
摘要:今天看《程序员面试宝典》一书(为了应付将要到来的微软笔试),看到了sizeof(string)这个问题。在Dev C++上测试的结果是4,很不明白。上网搜了一下,得到如下结果:string strArr1[]={"Trend", "Micro", "Soft"};sizeof(strArr1)=12转自:http://apps.hi.baidu.com/share/detail/30398570关于sizeof(string),今天看那本面试宝典的时候看到这个表达式,有点吃惊,书上写着sizeof(string)=4;当时很纳闷,难道 阅读全文
posted @ 2012-04-04 10:27 wanghetao 阅读(50565) 评论(6) 推荐(8) 编辑
char *p="abc"与char p[]="abc"的不同
摘要:char *p="abc"与char p[]="abc"的不同问题引入:在实习过程中发现了一个以前一直默认的错误,同样char *c = "abc"和char c[]="abc",前者改变其内容程序是会崩溃的,而后者完全正确。程序演示:测试环境Devc++代码#include <iostream>using namespace std;main(){ char *c1 = "abc"; char c2[] = "abc"; char *c3 = ( char* ) 阅读全文
posted @ 2012-04-03 21:43 wanghetao 阅读(6818) 评论(4) 推荐(1) 编辑
atexit()函数
摘要:atexit 函数名: atexit 头文件:#include<stdlib.h> 功 能: 注册终止函数(即main执行结束后调用的函数) 用 法: int atexit(void (*func)(void)); 注意:按照ISO C的规定,一个进程可以登记多达32个函数,这些函数将由exit自动调用。atexit()注册的函数类型应为不接受任何参数的void函数,exit调用这些注册函数的顺序与它们 登记时候的顺序相反。同一个函数如若登记多次,则也会被调用多次。 程序例: #include <stdio.h> #include <stdlib.h> vo 阅读全文
posted @ 2012-04-03 20:53 wanghetao 阅读(16114) 评论(0) 推荐(0) 编辑
后缀表达式
摘要:后缀表达式 不包含括号,运算符放在两个运算对象的后面,所有的计算按运算符出现的顺序,严格从左向右进行(不再考虑运算符的优先规则,如:(2 + 1) * 3 , 即2 1 + 3 *编辑本段表达式的计算 运用后缀表达式进行计算的具体做法: 建立一个栈S 。从左到右读后缀表达式,如果读到操作数就将它压入栈S中,如果读到n元运算符(即需要参数个数为n的运算符)则取出由栈顶向下的n项按操作符运算,再将运算的结果代替原栈顶的n项,压入栈S中 。如果后缀表达式未读完,则重复上面过程,最后输出栈顶的数值则为结束。编辑本段表达式之间的转换 计算机实现转换: 将中缀表达式转换为后缀表达式的算法思想: ... 阅读全文
posted @ 2012-04-01 23:37 wanghetao 阅读(3871) 评论(0) 推荐(0) 编辑

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示