LINUX.ORG.RU

[C]вывод в консоль происходит после отрабоки цикла


0

0
	for(int i=0;i<10;i++)
	{
		if((counter=read(sockfd,income,100))>0)
		{
			//printf("%i\n",(int)strlen(income));
			printf("%s",income);

			//send(1,income,sizeof(income),0);
			memset(income,0,1024*sizeof(char));
		}
		else
		{
			//printf("none");
			//printf("%s",strerror(errno));
			sleep(1);
		}

	}

Такой вот кусочек кода.

income — указатель на массив из 1024 байт.

Ситация такова: printf выводит в консоль только ПОСЛЕ того, как отработает весь цикл.

Но если написать printf(«%s\n»,income);то выводит в процессе выполнения цикла.

Я где-то жестко туплю, но не могу понять где...

Надо выводить в процессе, без всяких там «\n»

★★☆

Re: [C]вывод в консоль происходит после отрабоки цикла

почему подобные вопросы возникают с удивительной периодичностью?

mono ★★★★★
()

Re: [C]вывод в консоль происходит после отрабоки цикла

Почитай про буферизацию, fflush тебе в помощь.

Boy_from_Jungle ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.