全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:740
推到 Plurk!
推到 Facebook!

一個陣列的小問題

尚未結案
spaceworld1108
一般會員


發表:30
回覆:19
積分:9
註冊:2004-05-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-08-26 13:42:48 IP:140.118.xxx.xxx 未訂閱
我的程式碼如下 while (!feof(tran))       // 讀取文字檔    {         StrPCopy(Buff,'\0');  //把Buff清空!         fgets(Buff,254, tran); if (strSource.SubString(TitlePos,FindTitle.Length()) == "vertex")                 {                 strList->CommaText=strSource.SubString(TitlePos+ FindTitle.Length(),strSource.Length()-TitlePos);   a[0]= StrToFloat(strList->Strings[0]);      //x軸的點  a[1]= StrToFloat(strList->Strings[1]);      //y軸的點  a[2]= StrToFloat(strList->Strings[2]);      //z軸的點                         Memo1->Lines->Add(a[0]);                         Memo2->Lines->Add(a[1]);                         Memo3->Lines->Add(a[2]);                 }    為什麼點都存在一個陣列點中,x軸的點都只存在a[0]                            y軸的點都只存在a[1]  這是為什麼? 那如果我要分別一個點存在一個陣列點中要如何做ㄋ  請各位大大幫我一下  拜託
andychang1690
資深會員


發表:20
回覆:694
積分:442
註冊:2003-03-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-08-26 14:34:31 IP:61.142.xxx.xxx 未訂閱
spaceworld1108:
不太懂你的意思?!
float a[2][2][2];
while (!feof(tran)) // 讀取文字檔
{
StrPCopy(Buff,'\0'); //把Buff清空!
fgets(Buff,254, tran);
if (strSource.SubString(TitlePos,FindTitle.Length()) == "vertex")
{
  strList->CommaText=strSource.SubString(TitlePos  FindTitle.Length (),strSource.Length()-TitlePos); 
  a[0][0][0]=StrToFloat(strList->Strings[0]); //x軸的點
  a[0][1][0]=StrToFloat(strList->Strings[1]); //y軸的點
  a[0][0][1]=StrToFloat(strList->Strings[2]); //z軸的點
  Memo1->Lines->Add(a[0][0][0]);
  Memo2->Lines->Add(a[0][1][0]);
  Memo3->Lines->Add(a[0][0][1]);
}
是否這樣?        
Andy Chang
------
Andy Chang
spaceworld1108
一般會員


發表:30
回覆:19
積分:9
註冊:2004-05-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-08-26 14:44:29 IP:140.118.xxx.xxx 未訂閱
謝謝你的回覆 不好意思,但是我的問題是 (例如:目前的問題) a[0]就已經裡面有=10,0,-10........ (希望) 現在希望a[0]=10 a[1]=0 a[2]=-10 . . . .
spaceworld1108
一般會員


發表:30
回覆:19
積分:9
註冊:2004-05-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-08-26 14:53:32 IP:140.118.xxx.xxx 未訂閱
我的意思是 (例如:(目前的問題)) a[0] 中就已經包含={10,0,-10......} (希望能夠) a[0]=10 a[1]=0 a[2]=-10 . . . 麻煩一下 謝謝
nlj859
資深會員


發表:139
回覆:375
積分:322
註冊:2004-03-20

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-08-26 15:03:23 IP:163.28.xxx.xxx 未訂閱
Hello spaceworld1108, 你原本的a[0]的資料中間必須以空格或是其它符號隔開,才有辦法再把它拆開處理,相關文章請參考底下連結: http://delphi.ktop.com.tw/topic.php?TOPIC_ID=55216 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=55217
andychang1690
資深會員


發表:20
回覆:694
積分:442
註冊:2003-03-14

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-08-26 15:24:24 IP:61.142.xxx.xxx 未訂閱
引言: 我的意思是 (例如:(目前的問題)) a[0] 中就已經包含={10,0,-10......} (希望能夠) a[0]=10 a[1]=0 a[2]=-10 . . . 麻煩一下 謝謝
float a[]={10,0,-10}; a[0]=10; a[1]=0; a[2]=-10; 是這樣嗎? Andy Chang
------
Andy Chang
bass15
高階會員


發表:24
回覆:171
積分:119
註冊:2003-10-27

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-08-26 17:08:54 IP:219.84.xxx.xxx 未訂閱
 
float a[100][3];//假設有一百筆
while (!feof(tran)) // 讀取文字檔
{
  int i=0;
  StrPCopy(Buff,'\0'); //把Buff清空!
  fgets(Buff,254, tran);
  if (strSource.SubString(TitlePos,FindTitle.Length()) == "vertex")
  {
    strList->CommaText=strSource.SubString(TitlePos  FindTitle.Length(),strSource.Length()-TitlePos); 
    a[i][0]= StrToFloat(strList->Strings[0]); //x軸的點
    a[i][1]= StrToFloat(strList->Strings[1]); //y軸的點
    a[i][2]= StrToFloat(strList->Strings[2]); //z軸的點
    Memo1->Lines->Add(a[i][0]);
    Memo2->Lines->Add(a[i][1]);
    Memo3->Lines->Add(a[i][2]);
    i  ;
  }
}    然後
a[0][0]就是第一筆的X
a[0][1]就是第一筆的Y
a[0][2]就是第一筆的Z    a[1][0]就是第二筆的X...以此類推...
spaceworld1108
一般會員


發表:30
回覆:19
積分:9
註冊:2004-05-14

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-08-27 12:46:29 IP:140.118.xxx.xxx 未訂閱
謝謝各位大大 由於你們的幫忙我已經順利解開問題 如果可以的話 也希望能夠給你們每個人分數 但是只能給一位 不好意思
系統時間:2024-06-22 18:48:48
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!