我有這段代碼;使用perl打印幾個字符串時的小問題
print "$score\n";
for (my $i = 0; $i < $n; $i++)
{
print $output[$i];
if($i == $center)
{
print "*";
}
print "\n";
}
,它應該打印:
-62
ttagggcccgg-a-tc---attaccgggc--caa
tta--gcgcgg-attcg-gatta-cggg---c-a*
gcg--gggcggcattagcaattt-gggg-atc-a
-ta--gcgc---a-----aataa-ccgg------
而是它打印此:
-62
ttagggcccgg-a-tc---attaccgggc--caa
*ta--gcgcgg-attcg-gatta-cggg---c-a
gcg--gggcggcattagcaattt-gggg-atc-a
-ta--gcgc---a-----aataa-ccgg------
如果我刪除 「*」 的字符串是正確的(他們是真的我想要打印的字符串),問題在於它的放置。這是印刷:
-62
ttagggcccgg-a-tc---attaccgggc--caa
tta--gcgcgg-attcg-gatta-cggg---c-a
gcg--gggcggcattagcaattt-gggg-atc-a
-ta--gcgc---a-----aataa-ccgg------
爲什麼打印的字符串的開始,而不是結束德,因爲它是咋辦?
非常感謝。
我懷疑這不是你的實際代碼,因爲如果沒有後面跟着換行符,就不可能打印'*'。 –
這是,我用複製和粘貼,只是插入一些空格,以獲得代碼正確顯示。 – hfingler
你確定你沒有流浪的回車(Ctrl + M)嗎?一個'print'^ M *「'(其中'^ M'是一個文字CR)會產生你所看到的輸出,但你的編輯器可能沒有正確顯示它。 –