2011-06-14 115 views
3

看看這個方法:傳遞參數

void* matmult (void*) 

是什麼(void*)意思?我知道該函數返回一個指向任何數據類型的指針。但是,這個論點是通過了什麼?爲什麼沒有參數名稱被傳遞?

+0

對不起,我沒有完成問題。怎麼沒有傳遞變量名? – Naz 2011-06-14 22:15:19

+0

你不需要命名變量,它只是一個簽名。看[這個維基百科鏈接](http://en.wikipedia.org/wiki/Function_signature) – Marlon 2011-06-14 22:19:24

回答

14

C原型函數中的變量名不是必需的。

+0

謝謝你們!很有幫助!! – Naz 2011-06-14 22:26:04

+1

變量名稱在函數定義中也不是必需的。 – 2011-06-15 01:43:26

2

而且有時你會看到類似這樣的:

void* foo(void); 

在這種情況下,功能明確聲明,它不帶任何參數。你爲什麼要這樣做,而不是隻留下參數?由於歷史原因,缺少參數實際上意味着一個void *或int *參數。

​​

這將工作和編譯,但它不清楚變量傳入的目的不是。