в c system () выполняется перед printf (), даже если printf стоит первым [duplicate]

You can do this using PHP



<!DOCTYPE html>
<html>
<body>

<?php
$txt1 = "the color is";
$txt2 = " red!";
echo $txt1.$txt2;
?>  

</body>
</html>

This will combine two strings and the putput will be: "the color is"
You can get the same output using below javascript code.




<script type="text/javascript">
var data1 = "the color is";
var data2 = "red";
var result = data1+" "+data2;
alert(result);
</script>
2
задан Blue 22 March 2019 в 14:00
поделиться

1 ответ

По умолчанию, когда stdout подключен к терминалу, он буферизируется по линии.

printf("some string");

не содержит '\n', и вы не вызываете fflush(stdout); после него, поэтому все, что делает printf("some string");, это копирует "some string" в выходной буфер вашего stdout .

Буфер очищается как конец main.

printf("some string\n"); немедленно очистит буфер, если stdout подключен к терминалу и вы не изменили буферизацию stdout.

printf("some string"); fflush(stdout); немедленно очистит буфер независимо от контекста и без необходимости в '\n'.

0
ответ дан PSkocik 22 March 2019 в 14:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: