在代码部分,stringData ++行似乎根本没有递增指针。有什么我想念的吗?
[1,2].sort().join(':');
"1:2"
[2,1].sort().join(':');
"1:2"
以下是默认示例代码,可以使用
bool WriteString(const char* stringData)
{
if(*stringData == '\0')
{
return true;
}
/* Write a character at a time, only if transmitter is empty */
while (PLIB_USART_TransmitterIsEmpty(USART_ID_1))
{
/* Send character */
PLIB_USART_TransmitterByteSend(USART_ID_1, *stringData);
/* Increment to address of next character */
stringData++;
if(*stringData == '\0')
{
return true;
}
}
return false;
}
这里" appData"它只是一个结构的实例,其中包含一个const char指针。
答案 0 :(得分:0)
只是为了确认代码是正常的并且增加了指针。我错误地认为问题是因为指针没有增加。在进一步调试时,结果证明是硬件计时问题。有关详细信息,请参阅上面的评论。
答案 1 :(得分:-4)
看起来您正在尝试增加一个您定义为常量的字符串,这意味着该字符串存储在只读内存中。
您可以尝试从字符串参数中删除const。