作者yauhh (喲)
看板C_and_CPP
標題Re: [問題]pop跟queue的堆疊問題
時間Fri Jun 11 06:19:25 2010
※ 引述《conan77420 (人生就是不停的戰鬥)》之銘言:
: void finalstate(char data[],char rule[],char temp[])
: {int c=0;
: int length=strlen(data);
: for(int i=0,j=0,k=0 ; i<length-1 ; i++)
: {
: while(data[j]!=rule[i]) //似乎是這個while有問題
: { temp[k++]=data[j++];}
: temp[k++]=data[j++];
j,k走到某個預期位置.
: k=0;
k回頭從頭開始. k < or = j
: while(j>=0)
: { data[j--]=temp[k++];}
k往j移動,同時j往k移動. (備份資料倒著貼回去?)
這樣的動作不是你要的. 你要的是像:
k = 1;
while (k <= j)
{
data[k] = temp[k];
k++;
}
data[0] = rule[i];
: k=0;j=0 ;
: }
: printf("%s",data);
: }
: 我的執行結果會有問題,不是出現亂碼就是程式跑一下就將視窗關閉
: 目前debug覺得應該是第一個while有問題
: 請問該如何修改?
: 謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.160.215.118
※ 編輯: yauhh 來自: 218.160.215.118 (06/11 06:23)
推 conan77420:雖然不是用這方法,後來還是做出來了XD 06/11 08:26
→ conan77420:我的length應該用rule的才對 06/11 08:27
→ yauhh:你確定資料沒有倒著貼去? 06/11 10:29