- 博客(6)
- 收藏
- 关注
原创 C语言的参数传递方式
很多教材上说:C语言的参数传递方式有传值调用和传址调用,真是瞎掰~C语言的参数传递方式只有传值调用一种!最简单的就是:void fun1(int a);这是传值调用void fun2(int *a);//这也是传值调用,不知道为什么要说它是传址。传递的参数类型是个 int*,一样是值复制传递,在fun2中,你无法修改a的值(或者说,你在函数修改a的值,并不会影响实参a的值),你可以
2007-04-05 22:28:00 1221 1
翻译 无根的根:无名师的Unix心传
一、无名师与万行码无名师曾对来访的程序员说:“Unix传统上认为,一行shell脚本胜过万行C程序。”这个程序员自以为对C极其精通,说:“这不可能。UNIX内核正是用C实现的。”无名师回道:“确是如此。不过,UNIX传统上认为,一行shell脚本胜过万行C程序。“程序员颇为沮丧:”但是在C中我们可领会到尊者Ritchie的智慧。我们与操作系统和机器合而为一,可以获取无与伦比的性能。”无名师回道:“
2006-11-28 14:51:00 935
原创 在C++ Builder中实现程序自动运行
要实现程序开机自动运行,可以通过在注册表相应位置添加键值来实现,下面介绍在C++ Builder中如何操作。要操作注册表,首先要包含头文件Registry.hpp,同时,要在HKEY_LOCAL_MACHINE//Software//Microsoft//Windows//Current/Version//Run中添加程序的路径与文件名。编写regrun.cpp文件如下/* 实现程序
2006-05-03 02:15:00 1923
原创 进制转换的疑问?
进制转换的疑问有时在论坛上会看见有人问如何在C中将十进制转换为二进制、十六进制、八进制之类的,感觉非常的奇怪,在C中根本没有必要转换,数据在内存中始终是以二进制的形式存在的,只不过是输出的时候可以选择不同的格式,如%d,%x,%o,不管怎么转换,数据的值始终都不会变的。再说了,C并没有规定你一定要用十进制,你可以对一个整型变量使用位操作符直接进行二进制操作,根本不需要特意去转换嘛。纯属
2006-04-14 15:02:00 1018
原创 程序中不要依赖求值顺序
程序中不要依赖求值顺序在C语言中,并没有指定同一表达式中操作数的计算顺序。例如:有两个函数f()和g();x = f() + g();若在f和g中都引用了一个全局变量y,且在f和g中都改变了y的值,那个x的结果会依赖于f和g的计算顺序,在不同的机器上可能会出现不同的结果。为了保证计算结果的正确性,可以把中间结果保存在临时变量中。此外,函数各个形参的求值顺序也是没有指定的。如
2006-04-13 22:01:00 1361
原创 char型变量参加运算时的技巧
char型变量参加运算时的技巧在c中,一般编译器给出的char的范围是-128--127,这对于一般的ASCII字母已经足够,但对于汉字编码,是用两个char来保存一个汉字,而每一位的值都会大于127,如果这时存储汉字的char变量参加运算,则会出现溢出。举个简单的例子,在QQ上有一种开玩笑的方式是让人用Alt+对应数字来输入汉字,例如Alt+55021可以输入“猪”字,这种方法是如何来的?因
2006-04-07 14:37:00 5758
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人