字符串转换为数组

时间:2012-01-24 05:32:23

标签: c

这是/不是作业...列表的打印是功课,效果很好,iscntrl()和数组的东西是从现在开始的6个星期,让我感到悲伤。

我想创建一个填充了Ascii表的前32个TLA的数组,这样当我打印出Decimal到Ascii代码的列/行图表时,我可以使用iscntrl()来标记它是一个不可打印的字符。在它的位置,我想抓住数组中的下一个TLA并打印而不是非图形字符。

我的iscntrl()工作正常。只是想不通数组的东西。我拥有和在线书籍中的所有示例都想要演示从用户那里获取输入并将其扔进阵列。我想在代码的开头给数组一个列表并从中拉出来。

有人可以给我一个很好的链接,或者告诉我如何完成整个过程吗?

我有32个三个字母的项目,我需要填充数组并通过 for循环将它们拉出来。

感谢。

2 个答案:

答案 0 :(得分:4)

您可以声明这样的数组,并预先填充其值:

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

然后,您可以在代码中作为数组访问ControlCharacterNames

答案 1 :(得分: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

希望我理解你的问题。