C++調(diào)試在換行的時(shí)候卡住了怎么辦?
速讀
解決方法:
1.加入一個(gè)#define endl '\n'
2.將endl改為‘\n’,即直接輸出‘\n’(該方法更穩(wěn)定)
導(dǎo)入
這天我們的程序出現(xiàn)了BUG

嘶,明明是求3個(gè)數(shù)最大公約數(shù)的題目,給出了這么一個(gè)答案,肯定是不對(duì)的
這就用到了我們的調(diào)試
問題
為了解決上面的BUG我們?cè)诿恳淮斡?jì)算余數(shù)的時(shí)候輸出
通過調(diào)試,我們發(fā)現(xiàn)了我們現(xiàn)在所要討論的問題:調(diào)試在換行的時(shí)候卡住了

無論怎么點(diǎn)下一步都沒有用。
而這一行改成了printf("%d\n",r);,就解決了問題。

但是有人就要說了,那我不懂c語言怎么辦
好辦,通過這個(gè)我們可以發(fā)現(xiàn)調(diào)試是不支持endl換行的,而\n卻可以
那我們把endl換成\n不久可以了嗎
這里我們用到了#define
用這個(gè)進(jìn)行替換(賦值)
具體如下#define endl '\n'
把他加入該代碼就好了

當(dāng)然也有我們第二種方法即將endl改為'\n'
在此特別感謝我們的WS_TSKY
可以看見該方法也是可以執(zhí)行換行的,而且可能不會(huì)造成更大的bug

總結(jié)
問:C++調(diào)試在換行的時(shí)候卡住了怎么辦?
答:在該文件加入一個(gè)#define endl '\n'或者將endl改為'\n'
后序

通過調(diào)試,up也是成功找到了BUG,即輾轉(zhuǎn)相除發(fā)應(yīng)該是除數(shù)等于上一個(gè)的余數(shù)
你們找到了嗎?
標(biāo)簽: