我有5個數組和一個指針數組,我需要知道指針數組(不是sizeof)中每個數組的長度是多少。 我該怎麼做?如何知道指針數組中指針的長度是多少?
int arr1[] = { 3, 9, 6, 7 };
int arr2[] = { 2, 5, 5 };
int arr3[] = { 0 };
int arr4[] = { 1, 6 };
int arr5[] = { 4, 5, 6, 2, 1 };
int* arr6[] = { arr1, arr2, arr3, arr4, arr5 };
基於這個家庭作業的所有以前的版本,是不是在數組本身的答案? –
恐怕你不能。一旦轉換爲'int *',它們的大小將不可避免地丟失給編譯器。在運行時,一個int數組沒有大小的概念。您應該:將其大小記錄在其他地方,或者隱式編碼(例如,最後一個元素應該總是指定的,否則不使用,常量,比如'0'或'-1')。 – rslemos
不完全重複,但這個問題似乎有更好的理解這個作業http://stackoverflow.com/questions/43191792/sorting-5-arrays-in-one-function –