2012-01-24 105 views
3

這是/不是功課...名單的打印作業和偉大工程的iscntrl判斷()和數組的東西6周從現在的東西,給我的悲傷。字符串成陣列

我想創建一個填充了Ascii表的前32個TLA的數組,這樣當我打印出Decimal到Ascii代碼的列/行圖時,我可以使用iscntrl()來標記它是不可打印的字符。在它的位置,我想抓住陣列中的下一個TLA並打印出來,而不是非圖形字符。

我有iscntrl判斷()工作的罰款。只是無法弄清楚陣列的事情。在書中我已經和網上所有的例子要演示從用戶抓住輸入,並將其扔進數組。我想在代碼的開頭給這個數組一個列表,然後從中拉出。

能有人要麼給我一個很好的鏈接,我需要什麼或只是告訴我該怎麼做的全過程?

我有32個三個字母的項目,我需要填充數組,並通過將其拉出,以便循環

謝謝。

回答

4

您可以聲明數組這個樣子,和預填值:

const char *ControlCharacterNames[] = { 
    "NUL", 
    "SOH", 
    "STX", 
    "ETX", 
    // etc 
}; 

然後,您可以訪問ControlCharacterNames在你的代碼的數組。

+0

謝謝SOOOO了!現在我整晚都不會整夜把頭髮拉出來。 –

3

http://publications.gbdirect.co.uk/c_book/chapter6/initialization.html,章節 「6.7.2。多個初始化」。

長話短說,你可能需要像

char *TLAs[] = { "TL1", "TL2", "TL3", "FYI", "WTH", /* ...and so on...*/ }; 

,然後拉你需要使用它的指數

printf(TLAs[3]); // print "FYI", the 4th TLA 

希望我理解你的問題正確的一個。

+0

好的,我需要開始更快地輸入這些東西。 – zrxq