C 我能';我不理解这个结果

C 我能';我不理解这个结果,c,linux,system-calls,C,Linux,System Calls,但上面代码的结果如下 Acorn 书 1 2 我解决不了这个问题。我仔细考虑了一下 我应该怎么做才能生成可以打印第一个结果的代码?已缓冲。在每次调用write(1,…(因为它是一个)之前需要调用,或者在每个printf格式字符串末尾加上一个\n(因为stdout通常是行缓冲的) 顺便说一句,您可以在以后使用它填充字符串缓冲区。另请参见&&&…缓冲。您需要在每次调用write(1,..(因为它是a)之前调用,或者在每个printf格式字符串结束时使用\n(因为stdout通常是行缓

但上面代码的结果如下

Acorn
书
1        2
我解决不了这个问题。我仔细考虑了一下

我应该怎么做才能生成可以打印第一个结果的代码?

已缓冲。在每次调用
write(1,
…(因为它是一个)之前需要调用,或者在每个
printf
格式字符串末尾加上一个
\n
(因为stdout通常是行缓冲的)

顺便说一句,您可以在以后使用它填充字符串缓冲区。另请参见&&&…

缓冲。您需要在每次调用
write(1,
..(因为它是a)之前调用,或者在每个
printf
格式字符串结束时使用
\n
(因为stdout通常是行缓冲的)

顺便说一句,您可以在以后使用它填充字符串缓冲区。另请参见&&&…

缓冲。您需要在每次调用
write(1,
..(因为它是a)之前调用,或者在每个
printf
格式字符串结束时使用
\n
(因为stdout通常是行缓冲的)

顺便说一句,您可以在以后使用它填充字符串缓冲区。另请参见&&&…

缓冲。您需要在每次调用
write(1,
..(因为它是a)之前调用,或者在每个
printf
格式字符串结束时使用
\n
(因为stdout通常是行缓冲的)


顺便说一句,您可以稍后使用它填充字符串缓冲区。另请参见&&&…

输出缓冲区中的
printf
的输出被卡住。为了与
write
互操作,您需要刷新:

#include <unistd.h>
#include <stdio.h>
#include <fcntl.h>

int main(void)
{
   printf("%d\t", 1);
   write(1, "Acorn\n", 6);
   printf("%d\t", 2);
   write(1, "Book\n", 5);

   return 0;
}
#包括
#包括
#包括
内部主(空)
{
printf(“%d\t”,1);
fflush(stdout);
写(1,“橡子”,6);
printf(“%d\t”,2);
fflush(stdout);
写(1,“书”\n“,5);
返回0;
}

printf的输出被卡在输出缓冲区中。为了与
write
互操作,您需要刷新:

#include <unistd.h>
#include <stdio.h>
#include <fcntl.h>

int main(void)
{
   printf("%d\t", 1);
   write(1, "Acorn\n", 6);
   printf("%d\t", 2);
   write(1, "Book\n", 5);

   return 0;
}
#包括
#包括
#包括
内部主(空)
{
printf(“%d\t”,1);
fflush(stdout);
写(1,“橡子”,6);
printf(“%d\t”,2);
fflush(stdout);
写(1,“书”\n“,5);
返回0;
}

printf的输出被卡在输出缓冲区中。为了与
write
互操作,您需要刷新:

#include <unistd.h>
#include <stdio.h>
#include <fcntl.h>

int main(void)
{
   printf("%d\t", 1);
   write(1, "Acorn\n", 6);
   printf("%d\t", 2);
   write(1, "Book\n", 5);

   return 0;
}
#包括
#包括
#包括
内部主(空)
{
printf(“%d\t”,1);
fflush(stdout);
写(1,“橡子”,6);
printf(“%d\t”,2);
fflush(stdout);
写(1,“书”\n“,5);
返回0;
}

printf的输出被卡在输出缓冲区中。为了与
write
互操作,您需要刷新:

#include <unistd.h>
#include <stdio.h>
#include <fcntl.h>

int main(void)
{
   printf("%d\t", 1);
   write(1, "Acorn\n", 6);
   printf("%d\t", 2);
   write(1, "Book\n", 5);

   return 0;
}
#包括
#包括
#包括
内部主(空)
{
printf(“%d\t”,1);
fflush(stdout);
写(1,“橡子”,6);
printf(“%d\t”,2);
fflush(stdout);
写(1,“书”\n“,5);
返回0;
}

printf(“1acorn\n2 Book”);
我必须使用系统函数。“写”
write(1,“1acorn\n2 Book”,14);
Hmm.。我的意思是,如果我想打印数字,我必须使用printf,但如果我想打印字符串,我必须使用write
printf(“1acorn\n2 Book”);
我必须使用系统函数。“写”
write(1,“1acorn\n2 Book”,14);
Hmm.。我的意思是,如果我想打印数字,我必须使用printf,但如果我想打印字符串,我必须使用write
printf(“1acorn\n2 Book”);
我必须使用系统函数。“write”。
write(1,“1acorn\n2 Book”,14)
Hmm..我的意思是,如果我想打印数字,我必须使用printf,但如果我想打印字符串,我必须使用write
printf(“1 Acorn\n2 Book”);
我必须使用系统函数。“write”。
write(1,“1 Acorn\n2 Book”,14)
Hmm..我的意思是,如果我想打印数字,我必须使用printfb,但如果我想打印字符串,我必须使用write