为什么我的程序只能每隔一个字符打印一次?C
我创建了一个程序,以按相反顺序打印字符串(以“.”结尾)。程序获取每个字符并将其以相反顺序存储在链表中,然后在主函数中打印出链表。它可以工作,但是它会每隔一个字符打印一次为什么我的程序只能每隔一个字符打印一次?C,c,linked-list,printf,C,Linked List,Printf,我创建了一个程序,以按相反顺序打印字符串(以“.”结尾)。程序获取每个字符并将其以相反顺序存储在链表中,然后在主函数中打印出链表。它可以工作,但是它会每隔一个字符打印一次 int main (void) { printf("Enter text: "); char text; textE *nexttext = NULL; while(getchar() != '\n') { text = getchar(); nextte
int main (void)
{
printf("Enter text: ");
char text;
textE *nexttext = NULL;
while(getchar() != '\n')
{
text = getchar();
nexttext = insertchar(nexttext, text);
}
}
while
循环中的getchar()
,以及text=getchar()中的getchar()
代码>都从缓冲区中取出一个字符。您只能看到输出中的每个字符,因为您正在丢失输入中的每个奇数字符。而循环中的getchar()
和text=getchar()中的getchar()
代码>都从缓冲区中取出一个字符。你只能看到输出中的每个字符,因为你会丢失输入中的每个奇数字符。不要听起来粗鲁,因为我确信有人想帮助你回答这些问题,但对未来来说,这可能也很有用哈哈,没问题,谢谢不要听起来粗鲁,因为我确信有人想要帮助和回答这样的问题,但对于未来来说,这可能也是有用的哈哈,没问题,谢谢