計算陣列 array 大小 |
答題得分者是:syntax
|
appleboy
一般會員 發表:1 回覆:1 積分:0 註冊:2007-08-28 發送簡訊給我 |
比如說我宣告一個 int a[10];
那我要怎麼計算他的 array 個數? 在 php 可以利用 count 跟 foreach 這兩個函式在 bcb 裡面怎麼用? 一直卡在這裡 a[test1] = "test1"; a[test2] = "test2"; 因為現在我存放一個陣列進去,可是我想要知道他的大小,就如同上面這樣 請問我該如何寫呢?
------
http://blog.wu-boy.com 編輯記錄
appleboy 重新編輯於 2008-02-04 12:12:26, 註解 無‧
|
syntax
尊榮會員 發表:26 回覆:1139 積分:1258 註冊:2002-04-23 發送簡訊給我 |
參閱 BCB Help on sizeof 與 StrLen
===================引 用 appleboy 文 章=================== 比如說我宣告一個 int a[10]; 那我要怎麼計算他的 array 個數? 在 php 可以利用 count 跟 foreach 這兩個函式在 bcb 裡面怎麼用? 一直卡在這裡 a[test1] = "test1"; a[test2] = "test2"; 因為現在我存放一個陣列進去,可是我想要知道他的大小,就如同上面這樣 請問我刊如何寫呢? |
appleboy
一般會員 發表:1 回覆:1 積分:0 註冊:2007-08-28 發送簡訊給我 |
感謝妳,陣列的大小,我已經知道怎麼處理了
for (int i = 0; i < (sizeof(total)/sizeof(int)); i ) { total[i] = 0; } 這樣就可以知道 total 的陣列大小了 那我還有一個問題,如果陣列是長這樣 a[test1]; a[test2]; 我要怎麼取的 test1, test2 這兩個變數 for (int i = 0; i < (sizeof(a)/sizeof(int)); i ) { } 也就是像 foreach 一樣的功能 ===================引 用 syntax 文 章=================== 參閱 BCB Help on sizeof 與 StrLen
------
http://blog.wu-boy.com |
Stallion
版主 發表:52 回覆:1600 積分:1995 註冊:2004-09-15 發送簡訊給我 |
把C++的HANDBOOK拿出來翻翻看了嗎?
C++的陣列大小必須是固定的序數!你的想法在C++下無法成立,除非你改用動態記憶體配置的方式。 ===================引 用 appleboy 文 章=================== 感謝妳,陣列的大小,我已經知道怎麼處理了 for (int i = 0; i < (sizeof(total)/sizeof(int)); i ) { total[i] = 0; } 這樣就可以知道 total 的陣列大小了 那我還有一個問題,如果陣列是長這樣 a[test1]; a[test2]; 我要怎麼取的 test1, test2 這兩個變數 for (int i = 0; i < (sizeof(a)/sizeof(int)); i ) { } 也就是像 foreach 一樣的功能 ===================引 用 syntax 文 章=================== 參閱 BCB Help on sizeof 與 StrLen |
syntax
尊榮會員 發表:26 回覆:1139 積分:1258 註冊:2002-04-23 發送簡訊給我 |
enum
{ test1, test2, test3 .... } a[test1]; 相當於 a[0] ===================引 用 appleboy 文 章=================== 感謝妳,陣列的大小,我已經知道怎麼處理了 for (int i = 0; i < (sizeof(total)/sizeof(int)); i ) { total[i] = 0; } 這樣就可以知道 total 的陣列大小了 那我還有一個問題,如果陣列是長這樣 a[test1]; a[test2]; 我要怎麼取的 test1, test2 這兩個變數 for (int i = 0; i < (sizeof(a)/sizeof(int)); i ) { } 也就是像 foreach 一樣的功能 ===================引 用 syntax 文 章=================== 參閱 BCB Help on sizeof 與 StrLen |
syntax
尊榮會員 發表:26 回覆:1139 積分:1258 註冊:2002-04-23 發送簡訊給我 |
補充一下:
struct MemoryArray { int size; type *lp_array; } #define Length(thearray) thearray.size; 這就是使用 C 模擬出 Delphi 的作法,在宣告的 array 前面,多加上(多宣告)一個區域,存放陣列的大小,所以 Length(array),才得以傳回大小 這是在使用複雜結構時的貼心設計,但是 C/C 必須自己來,所以才會越來越多人用 vector,而不用 array 但是並不表示 array 就是不好的東西或退流行的東西,因為 array 比 vector 快效率好,但比較不方便 如果你不需要在乎效能上的耗損,vector 是很方便的選擇之一 ===================引 用 syntax 文 章=================== enum { test1, test2, test3 .... } a[test1]; 相當於 a[0] ===================引 用 appleboy 文 章=================== 感謝妳,陣列的大小,我已經知道怎麼處理了 for (int i = 0; i < (sizeof(total)/sizeof(int)); i ) { total[i] = 0; } 這樣就可以知道 total 的陣列大小了 那我還有一個問題,如果陣列是長這樣 a[test1]; a[test2]; 我要怎麼取的 test1, test2 這兩個變數 for (int i = 0; i < (sizeof(a)/sizeof(int)); i ) { } 也就是像 foreach 一樣的功能 ===================引 用 syntax 文 章=================== 參閱 BCB Help on sizeof 與 StrLen |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |