【发布时间】:2014-06-25 01:50:04
【问题描述】:
如何停止 sting 数组。如果我设置最多可以放置 40 个字符,但我不想用 40 个字符填充整个字符串。这是我在字符串数组中写入字符的代码。
int main(void)
{
char data[1][40];
int i1 = 0;
int i2 = 0;
serial_init();
while (1)
{
for (i1=0;i1<1;i1++)
{
for (i2=0;i2<40;i2++)
{
data[i1][i2] = Usart_Receive();
}
}
for (i1=0;i1<1;i1++)
{
for (i2=0;i2<40;i2++)
{
Usart_Transmit(data[i1][i2]);
}
}
}
return 0;
}
例如,如果我推送if (Usart_Receive() == '.')。它的作用是停止字符串填充,直到 40 个字符。如何做到这一点,我希望有人可以在这里帮助我。
【问题讨论】:
-
c 字符串以空值结尾,因此简单的方法是使内部循环 while(data[i1][i2++] = Usart_Receive()) 并编写该字符获取函数以在输入时返回 0完成了。