回答
不,兩者沒有區別。
你將不得不取消引用值第一個...
我.......認爲 – 2011-03-30 20:19:09
nope。這取決於你,如果你願意,你可以解引用第二個:'*(array + 3)'和'pointer [3]'是一樣的。 – BlackBear 2011-03-30 20:21:36
那麼,我有兩個函數: int function(int arr []); int function2(int * arr); 爲了測試,我有這個數組: int arr [5] = {1,1,1,1,1}; 在Visual Studio 2010中,我可以這樣做: function(arr); function2(arr); 即使我沒有將一個動態分配的數組傳遞給function2,它仍然允許我這樣做。爲什麼是這樣?通過做基準測試,兩個函數都有相同的結果,所以如果解除引用確實發生,它可以忽略不計。 – leetNightshade 2011-03-30 20:26:24
語義是相同的,但對於外部編程,它更容易和直接的理解:第二個函數接受一個數組作爲參數。它不可能像第一個那樣直接。
C編譯器沒有區別。儘管如此,讀取代碼的程序員卻有所不同。
這裏,ARR是指向一個整數(可能用於從函數返回的結果):
foo(int* arr) {}
這裏,ARR是一個指向第一個整數數組中的(可能是用於使列表在功能中和/或在功能外):
foo(int arr[]) {}
此外,指定函數的返回類型將有所幫助。
- 1. func foo(arr [] int)int和func foo(arr [num] int)有什麼區別int
- 2. 代碼崩潰時INT ARR = 1 && arr;但不是INT ARR = 0 && arr;
- 3. jQuery的$。每個(ARR,FOO)與$(ARR)。每個(富)
- 4. 類foo,類foo()和類foo(object)之間的區別?
- 5. 作爲參數($ foo)和(foo $ foo)之間的區別
- 6. 「struct foo *」和「foo *」之間的區別foo是一個struct嗎?
- 7. static_cast <int>(foo)vs.(int)foo
- 8. Scala如何知道「def foo」和「def foo()」之間的區別?
- 9. JavaScript:Reflect.get()和obj ['foo']之間的區別
- 10. [foo release]和self.foo = nil之間的區別;
- 11. Angular 4中[(ngModel)] =「foo」和#foo之間的區別?
- 12. ifeq($(foo),)和ifndef foo之間的區別是什麼
- 13. 「virtual void IBase :: Foo」和「virtual void Foo」之間的區別是什麼?
- 14. 爲什麼int * arr = {};法律?
- 15. PHP:{$ foo}和$ {foo}之間是否有區別
- 16. 在Backbone中,model.get('foo')和model.attributes.foo之間的任何區別?
- 17. int foo = foo的標準參考
- 18. 這是什麼意思? int foo = foo + 4;
- 19. int p = *(int *)i和int p = *(int *)&i之間的區別
- 20. Foo :: class.java和Foo :: javaClass有什麼區別?
- 21. 三星:char *(* arr)[]和char *** arr(在C中)有什麼區別?
- 22. int someInts [3]和int * someInts = new int [3]之間的區別?
- 23. int x; arr [100]是什麼意思?
- 24. 語法「Foo(int v):val_(v){}」?
- 25. uint和unsigned int之間的區別?
- 26. C#中char和int之間的區別#
- 27. Python 3.5 - '//'和'int()'之間的區別
- 28. int,NSInteger和NSUInteger之間的區別
- 29. PHP中(int)1和1之間的任何區別?
- 30. Java中的int a [5],int a [],int a [] = {2,3}之間的區別
哇 - 今天很多這種類型的問題! – Sadique 2011-03-30 20:30:16
相關,但更新,問題:http://stackoverflow.com/questions/5573310/difference-between-passing-array-and-array-pointer-into-function-in-c – jogojapan 2013-05-25 09:34:21