所以即時編程相當新,我遇到了一些我無法弄清楚的東西。檢查一個變量,同時調用所需的功能
我會證明我的問題。
int main(void){
int number;
if(number == 1){
number1();
}else if(number == 2){
number2();
}else if(number == 3){
number3();
}else if(number == 4){
number4();
}else if(number == 5){
number5();
}else if(number == 6){
number6();
}else if(number == 7){
number7();
}else if(number == 8){
number8();
}else if(number == 9){
number9();
}else if(number == 0){
number0();
} else if (number >= 10 && <= 19){
number1();
number2(25);
}
}
void number1(int Q){
VGA_box(X + 5 + Q, 20, X+7 + Q, 60, white);
}
void number2(int Q){
VGA_box(X + Q, 20, X+ 20 + Q, 22, white);
VGA_box(X + 18 + Q, 22, X+ 20 + Q, 38, white);
VGA_box(X + Q, 38, X+ 20 + Q, 40, white);
VGA_box(X + Q, 40, X+ 2 + Q, 58, white);
VGA_box(X + Q, 58, X+ 20 + Q, 60, white);
}
請忽略的功能VGA_box()
,因爲這只是寫一行/盒的功能。
我正在做一個小遊戲,我想補充一個記分牌,但這裏是我的問題:
因爲我畫的數字(所以它們看起來更好IMO),我不得不調用函數,代表一個數字的函數。所以如果number = 1,函數number1();
被調用。 有沒有一種簡單的方法來調用函數number2()
,number5()
和number9()
,如果數字是259?或者讓我們說; 632.我能想出的唯一可能的方法是使用大量的if語句,但這需要我花些時間去做。
是否可以使用for循環來跟蹤數字的內容並調用所需的函數?
預先感謝您。
'switch-case'和函數指針,但是這已經太廣了...... –
把函數指針放在數組中,並將這些數字用作索引。 – Leandros