2012-09-15 99 views
4

我有一个字符串象这样Ç无符号字符字符串数组

char *T[] = {"0000", "0001", "0010", "0011", "0100", "0101", "0110", "0111", "1000", "1001", "1010", "1011", "1100", "1101", "1110", "1111"}; 

当我像这样做,但是,其中每个字符串是无符号字符

unsigned char *T[] = {"0000", "0001", "0010", "0011", "0100", "0101", "0110", "0111", "1000", "1001", "1010", "1011", "1100", "1101", "1110", "1111"}; 

我的阵列的阵列得到错误“使用'char [5]'类型的表达式'初始化'unsigned char *'将指针转换为具有不同符号的整数类型。”我猜这意味着一些正在使用的“0”和“1”的表示已经签名,但我不知道为什么/如何处理这些。我想有一个字符串数组,其中每个字符串是一个无符号字符数组而不是有符号字符。有人可以帮助吗?

注意:这是针对硬件问题,但不是实际问题,而且只是许多可能解决方案中的一个小步骤。但是,如果你能帮助我理解而不给我一个明确的答案,那将是一件好事。谢谢。

+4

简单地说,字符串文字的类型是char *'not'unsigned char *'。 – Mysticial

+0

必须使用铸造 –

+3

@tuğrulbüyükışık我强烈建议反对铸造打破型安全。 – Mysticial

回答