Tuesday, May 22, 2012

C++中const与define的区别

2010-12-30 by  

const常量有数据类型,而宏(#define定义的)没有数据类型。编译器可以对const常量进行类型检查,而对宏只进行字符替换没有类型检查;const 可以用来修饰函数参数、函数返回值,在C++里还可以用来修饰函数,定义类中某个成员函数为常量函数;有些编译器还可以对const常量进行调试,但不能对宏常量进行调试。

C/C++中assert的用法

2010-12-17 by  

assert宏能测试传入表达式的真假值,当表达式为真(true),则不会有任何反应;当表达式为假(false),则函数将输出错误信息,并中断程序的执行。 assert宏可以用来判断某表达式的真假值,并在程序执行的过程中实时响应错误信息,因此在程序开发的过程中,常常被用来作程序纠错的工具,当程序开发完成,只需要在加载头文件前面,利用#define指令定义NDEBUG这个关键字,则所有assert都会失效,源程序不需做任何修改。

C语言中的static关键字

2010-06-04 by  

1.static 全局变量与普通全局变量的区别: 在定义变量时,全局变量之前再冠以 static 就构成了静态的全局变量。全局变量本身就是静态存储方式,静态全局变量当然也是静态存储方式。两者在存储方式上并无不同。两者的区别在于非静态全局变量的作用域是整个源程序,当一个源程序由多个源文件组成时,非静态的全局变量在各源文件中都是有效的。而静态全局变量则限制了其作用域,即只在定义该变量的源文件内有效,在同一源程序的其他源文件中不能使用。由于静态全局变量的作用域局限域于一个源文件内,只能为该源文件内的函数使用,因此可以避免其他源文件 使用该变量。把普通全局变量改变为静态全局变量是改变了他的作用域,限制了他的使用范围。

数据结构:利用栈的操作实现表达式求值

2008-12-31 by  

数据结构课程中,在对桟的学习中我会遇到关于表达式求值问题,下面是我自己写的关于表达式求值的代码,其中还有很多不足之处,可以参考下思路。 如题:下面是我自己写的代码,一个头文件一个CPP文件。 以下是CPP文件(EvaluateExpression.cpp)源码 :

极限优化的编程题目

2008-12-27 by  

极限优化题目: 1 2 3 4 5 6 7 8 9 10 11 = N 其中N是运行时输入的一个整数,在以上式子左边加入+-*/使得式子成立 若解的个数超过50个时请自行终止解的输出(只输出前50个), 最后要输出解的总个数(不显示的也要统计在内) 1前面加不加负号都要考虑 时间限制3s例子:

C/C++ Programming Challenge – try this!

2008-10-12 by  

Today I have met a C programming problem on the one of the foreign websites, this is a funny problem,maybe you can challenge it : wishes !!! Here’s a puzzle for those who still have brain intact:- Write a function that takes a string as input, and outputs that string with the words in reverse order. Punctuation should [...]

EditPlus的应用

2008-10-04 by  

在这里下载EditPlus:         http://lcicnc.skycn.com/down/HA_EditPlus_v301_Build_446.zip 注册码: Name: crsky Code: 7879E-5BF58-7DR23-DAOB2-7DR30 EditPlus 配置Java编译环境 工具–>参数–>用户工具–>添加工具(在右侧)–>…