C++中const与define的区别
2010-12-30 by zhiwei
const常量有数据类型,而宏(#define定义的)没有数据类型。编译器可以对const常量进行类型检查,而对宏只进行字符替换没有类型检查;const 可以用来修饰函数参数、函数返回值,在C++里还可以用来修饰函数,定义类中某个成员函数为常量函数;有些编译器还可以对const常量进行调试,但不能对宏常量进行调试。
C/C++中assert的用法
2010-12-17 by zhiwei
assert宏能测试传入表达式的真假值,当表达式为真(true),则不会有任何反应;当表达式为假(false),则函数将输出错误信息,并中断程序的执行。 assert宏可以用来判断某表达式的真假值,并在程序执行的过程中实时响应错误信息,因此在程序开发的过程中,常常被用来作程序纠错的工具,当程序开发完成,只需要在加载头文件前面,利用#define指令定义NDEBUG这个关键字,则所有assert都会失效,源程序不需做任何修改。
C语言中的static关键字
2010-06-04 by zhiwei
1.static 全局变量与普通全局变量的区别: 在定义变量时,全局变量之前再冠以 static 就构成了静态的全局变量。全局变量本身就是静态存储方式,静态全局变量当然也是静态存储方式。两者在存储方式上并无不同。两者的区别在于非静态全局变量的作用域是整个源程序,当一个源程序由多个源文件组成时,非静态的全局变量在各源文件中都是有效的。而静态全局变量则限制了其作用域,即只在定义该变量的源文件内有效,在同一源程序的其他源文件中不能使用。由于静态全局变量的作用域局限域于一个源文件内,只能为该源文件内的函数使用,因此可以避免其他源文件 使用该变量。把普通全局变量改变为静态全局变量是改变了他的作用域,限制了他的使用范围。
数据结构:利用栈的操作实现表达式求值
2008-12-31 by zhiwei
数据结构课程中,在对桟的学习中我会遇到关于表达式求值问题,下面是我自己写的关于表达式求值的代码,其中还有很多不足之处,可以参考下思路。 如题:下面是我自己写的代码,一个头文件一个CPP文件。 以下是CPP文件(EvaluateExpression.cpp)源码 :
极限优化的编程题目
2008-12-27 by zhiwei
极限优化题目: 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 zhiwei
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 zhiwei
在这里下载EditPlus: http://lcicnc.skycn.com/down/HA_EditPlus_v301_Build_446.zip 注册码: Name: crsky Code: 7879E-5BF58-7DR23-DAOB2-7DR30 EditPlus 配置Java编译环境 工具–>参数–>用户工具–>添加工具(在右侧)–>…
