English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

小弟學的8051是用Keil C寫的,目前做的實做須要用亂數,但是目前不知道8051取亂數的寫法該如何寫,仿照C語言的語法寫編譯會出現錯誤,原本使用的標頭檔定義與亂數程式碼如下:
標頭檔↓
#include
#include
#include
#include <time.h>
亂數程式碼↓
strand((unsigned)time(NULL));
guess=rand()%5+1;

請問我該如何修改或是有其他寫法,希望有大大能告知我亂數的寫法,如果標頭檔須增加什麼,希望能告知下,拜託不要給我組合語言,因為我還沒學過>"<

2007-12-16 08:06:01 · 1 個解答 · 發問者 宗訓 1 in 電腦與網際網路 程式設計

還是有一點不太董耶,剛剛把你的程式碼打進去之後,出現跟原本的錯誤式一樣的。
RAND.C(9): warning C206: 'strand': missing function-prototype
是我的語法寫錯嗎,我附上我全部的程式碼好了。

2007-12-16 18:43:14 · update #1

#include
#include
#include
#define P1=0xff;
char TBL2[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
int guess;
main()
{
strand(1);
guess=rand()%5+1;
P2=TBL2[guess];
}

謝謝你教導的方法唷,又學了一個方法

2007-12-16 18:43:34 · update #2

1 個解答

#include
strand(1);
guess=rand()%5+1;
8051 沒有內建時鐘,不會有 時間讓你查,所以不會有 time() 這個函數可用
函數不知道放在那個 .h 檔,用微軟的搜尋檔案內特定字串尋找一下就查到了,腦子要變通




2007-12-17 20:54:55 補充:
srand (1);

2007-12-17 20:55:47 補充:
guess=rand()%10;

2007-12-17 20:56:23 補充:
問題解決,記得給分

2007-12-16 17:16:28 · answer #1 · answered by 王先生 7 · 0 0

fedest.com, questions and answers