2016-08-23 92 views
-7

我想將2個變量存儲到char數組中,並打印我們的第一個變量,如下所示。C字符數組存儲變量

const char *a[2]; 
      a[0] = getCapital(bufferStore); //"Australia" 
      a[1] = getCurrencyCode(bufferStore); "9876.00" 

      printf("%s", a[0]); 

但是,我沒有得到任何輸出。 getCapital和getCurrencyCode的代碼在這裏應該是多餘的。我想知道的主要是我如何打印出「澳大利亞」。我是C語言新手,指針真的很難理解,我的任務在2個小時內完成。任何幫助將不勝感激!

+0

http://stackoverflow.com/questions/21376645/store-string-into-array-in-c – Idos

+2

你確定*函數的代碼是多餘的?這似乎對你的問題非常重要。 –

+3

另外,你有沒有嘗試調試你的應用程序?你有沒有嘗試在字符串的末尾添加一個換行符來清除它? –

回答

0

文件stdout,這是printf寫入的內容,默認爲行緩衝。這意味着您寫入的所有內容都被緩衝,即存儲在內存中,並且在打印換行符時被刷新(並實際打印)。

+2

正如@lurker在OP的評論中提到的那樣,通過添加''\ n''或'fflush(stdout)'來改變行爲表明程序的異常終止,暗示着更大的問題。 – EOF

+0

@EOF也許,但沒有一個MCVE,這是真的不可能告訴。 –

相關問題