我有一个字符串对象叫做Message
,它会被赋予如下字符串:
Message = "Hello";
每个字符都被存储在一个字符数组中:
void Load()
{
Message.toUpperCase(); // Makes all the characters uppercase
for (int T = 0; T < Message.length(); T++)
{
Storage[T] = Message.charAt(T);
}
}
这部分内容运行良好。
现在我想调用一个需要传递指向映射字符在5x7 LED矩阵上显示所需位值数组的整数指针的函数。
通常情况下,我可以调用Display(H)
(void Display(int Array[])
),然后一切正常。然而,我想使用字符串数组,以便可以自动完成。问题是,在使用H时,它通常被视为整数指针,工作得很好。存储区域包含不是指针的char,这会创建问题。
我已尝试各种转换方式,但似乎都失败了。这样做可能吗?
以下是我的尝试:
char to int:
int w = int(Storage[L]);
int* ww = &w;
这段代码可以编译通过,但输出的结果完全错误。所以我不太确定如何继续下去。
仅作澄清,以下代码是可行的:
int A[] = {0x1B, 0x15, 0xE, 0xE, 0x0, 0xE, 0xE, 0xE};
Display(A);
但这不会:
String[L] = A;
int w = int(Storage[L]);
int* ww = &w;
Display(ww);
我可能做了一些傻事,但我看不出来。
int Storage[?]
替换char Storage[?]
呢? 你的问题真的让我很困惑,我不知道你想做什么。 - KoKuToruchar
的大小是多少,int
的大小是多少?Display()
函数是否使用其 ASCII 值显示每个char
? - vvnramanDisplay(A);`
这里的预期输出是什么? - Bok McDonagh