史萊姆論壇

史萊姆論壇 (http://forum.slime.com.tw/)
-   程式語言討論區 (http://forum.slime.com.tw/f76.html)
-   -   c++語法 (http://forum.slime.com.tw/thread217931.html)

leowang 2007-10-10 05:18 PM

c++語法
 
有什麼方法可以"檢查陣列裡的元素"
如過超過陣列的元素就跳出 沒有的話就繼續執行

getter 2007-10-11 11:32 AM

可以使用 #define size 13

語法:

#include <stdio.h> 
#include <stdlib.h>
#define size 12
 
main()
{
int array[size];
int x;
.....
.....

for( ... ){
if ( (x+1) == size ) break;
....
....}

for( ... ){
if ( x == (size-1) ) break;
....
....}

}

利用 #define 來定義常數或是簡單的演算法可以方便編及程式。
而以本範例來說,利用 #define 定義的的常數 size 的值為 12,
當所宣告的 array 的大小為 12,有效範圍是 0 ~ 11 共為 12 個
當 if 在判斷 x 是否為 array 的最後一個元素時,需將 x+1 或
將 size 值 -1。

若是字串或是字元 array 時可以使用 strlen 函數指令來測量字串的
長度或是字元 array 的大小。

如果字串的話除了strlen 函數指令來處理,亦可利用字串結尾符號的 '\0'
來做為最後一個元素的判斷。

語法:


for (...) {

if ( str[x]== '\0') break;

}

或是

語法:


while( str[i] != '\0')
  { 
    ......
    ......
    ......
    i++;
  }

因此,仿製字串結尾的特性來說,可以在數值的 array 的最後一個元素內容中
以填入一個特定值,如 65535 ,表示如果處理到該數值時,則代表 array 已經
為最後一個元素且不可利用之。

語法:


for (...) {

if ( num[x]== 65535 ) break;

}

或是

語法:


while( num[i] != 65535)
  { 
    ......
    ......
    ......
    i++;
  }



所有時間均為台北時間。現在的時間是 05:16 AM

Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2025, Jelsoft Enterprises Ltd.

『服務條款』

* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *


SEO by vBSEO 3.6.1