作者LPH66 (IWH68S0XZ8M89)
看板Programming
标题Re: [请益] 指标的问题
时间Fri Dec 7 08:34:43 2007
※ 引述《readonly (唯读)》之铭言:
: 不过如果是只能看到function prototype,例如用别人的library,
: void f( object * p );
: object * p;
: f( p );
: 一般人应该会这样写,这不就危险了?
所以这个f的文件里就要说明他收的p是个怎样的参数
看要是个合法变数的位址或是阵列等等
然後要指示说这必须要用如 f(&var); 这样传进去 (如果要传个变数的位址进去的话)
: ※
: 只是有点好奇,这样的写法要用在什麽情况?
C语言中当该参数是输出用的时候或是可能改动到该参数时
(有时会被特称(且误称)为call by adderss)
也许是因为回传太多东西 也许是因为回传值是个阵列或是个还满大的东西
而必须要把其中一个或多个放到参数列去
例如<time.h>中有个函式叫gettime
它是这样的prototype:
void gettime(struct time *);
它的功能是回传(以struct time纪录的)目前时间
那因为这个参数是输出用 所以就要传进变数的位址进去
例如要用
struct time t;
gettime(&t);
这样去使用它
--
[LPH] Oops, your OOP's a problem? 说:
你现在还是看不到狗?
************* 说:
看得到 只是 他们不会跑 就一直呆呆在那边 一直在起点
[LPH] Oops, your OOP's a problem? 说:
你要按"ㄅㄧㄤˋ"它们才会跑啊@@"
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.91.5
※ 编辑: LPH66 来自: 140.112.91.5 (12/07 08:35)