Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
zterry
0 / 0 / 0
Регистрация: 11.11.2011
Сообщений: 11
#1

как count endl заменить на printf ? - C++

17.06.2012, 22:03. Просмотров 1856. Ответов 10
Метки нет (Все метки)

Всем добрый вечер , есть одна программа , там встречаются строчки .
Собственно вопрос , как будут выглядеть эти строчки с использованием printf .

C++
1
2
3
4
5
cout << "х" << i << "=" << xn << endl;
        i++;
        cout << "x" << i << "=" << xk << endl;
        i++;
    }
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.06.2012, 22:03
Здравствуйте! Я подобрал для вас темы с ответами на вопрос как count endl заменить на printf ? (C++):

Какого типа std::endl ? Как сделать так, чтобы функция могла принимать endl в качестве аргумента? - C++
Что надо указать в прототипе функции, чтобы можно передавать std::endl в качестве аргумента? Уже 3 часа голову ломаю! :wall: Помогите,...

Можно ли заменить \n на endl ? - C++
Есть два рабочих кода.Я экспериментировал с ними в одном кодк где оператор count, &quot;endl&quot; можно заменить \n. Но в коде где функция printf...

Нюансы синтаксиса: statement for - как понимать запись for (count=0, mask=1; count != 16; count++, mask<<= 1)? - C++
Много всяких языков попадалось, относительно много конечно, но такое вижу первый раз, что бы тело FOR имело не 3 оператора - начальный,...

Написать программу более простым языком (как заменить std::cout на printf? ) - C++
#include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;iomanip&gt; using namespace std; int main() { int const n = 5; int...

Заменить cout на printf - C++
Помогите пожалуйста заменить строчку из кода с cout на printf: cout &lt;&lt; mass &lt;&lt; &quot; &quot;; Полный код: #include &lt;iostream&gt; using...

Заменить scanf и printf на cin и cout - C++
Помогите пожалуйста переделать #include &quot;iostream&quot; #include &quot;math.h&quot; using namespace std; int main() { float x = -2.0, A...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
defer
秘密
555 / 235 / 3
Регистрация: 29.11.2010
Сообщений: 783
17.06.2012, 22:04 #2
i,xn,xk - это что?
0
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
17.06.2012, 22:05 #3
C++
1
2
3
printf("x%d=%d\n", i, xn);
i++;
printf("x%d=%d\n", i, xk)
1
Somebody
2789 / 1603 / 145
Регистрация: 03.12.2007
Сообщений: 4,193
Завершенные тесты: 1
17.06.2012, 22:18 #4
Вообще так для полной аналогии ещё надо fflush(stdout), но, как правило, и без него хорошо.
0
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
17.06.2012, 22:32 #5
Цитата Сообщение от Somebody Посмотреть сообщение
Вообще так для полной аналогии ещё надо fflush(stdout), но, как правило, и без него хорошо.
это будет аналогией std::cout << std::flush;
0
Somebody
2789 / 1603 / 145
Регистрация: 03.12.2007
Сообщений: 4,193
Завершенные тесты: 1
17.06.2012, 23:30 #6
Так endl же вызывает flush.
http://www.open-std.org/jtc1/sc22/wg...2012/n3337.pdf
27.7.3.8 Standard basic_ostream manipulators [ostream.manip]
namespace std {
template <class charT, class traits>
basic_ostream<charT,traits>& endl(basic_ostream<charT,traits>& os);
}
1 Effects: Calls os.put(os.widen(’\n’)), then os.flush().
2 Returns: os.
2
NoMasters
Псевдослучайный
1754 / 1097 / 72
Регистрация: 13.09.2011
Сообщений: 3,134
18.06.2012, 01:19 #7
Ну так и наличие '\n' в выводе сбрасывает буфер, если установлена построчная буферизация, а для stdout так оно и есть.
0
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
18.06.2012, 01:24 #8
Цитата Сообщение от NoMasters Посмотреть сообщение
Ну так и наличие '\n' в выводе сбрасывает буфер, если установлена построчная буферизация, а для stdout так оно и есть.
почему например так

C
1
2
3
4
5
6
7
#include <stdio.h>
#include <signal.h>
 
int main() {
  printf ("hello\n");
  raise(SIGKILL);
}
никакой буфер не сбрасывается

http://codepad.org/53mN8Hin
0
NoMasters
Псевдослучайный
1754 / 1097 / 72
Регистрация: 13.09.2011
Сообщений: 3,134
18.06.2012, 01:37 #9
А теперь из консоли) У пайпа по умолчанию не построчная буферизация.
0
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
18.06.2012, 01:42 #10
Цитата Сообщение от NoMasters Посмотреть сообщение
А теперь из консоли) У пайпа по умолчанию не построчная буферизация.
дак с чего она построчная у stdout?
в-принципе видно, что при выводе в консоль буферизация вроде как действительно строчная, но это както ос'зависимо, да и приложение не может знать куда оно выводит
0
NoMasters
Псевдослучайный
1754 / 1097 / 72
Регистрация: 13.09.2011
Сообщений: 3,134
18.06.2012, 01:49 #11
Хорошо, не у каждого подменённого stdout, а у того, что изначально в терминал.
Bash
1
2
3
4
5
alex@mbook /tmp $ ./buf
hello
Убито
alex@mbook /tmp $ ./buf > out && cat out 
Убито
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.06.2012, 01:49
Привет! Вот еще темы с ответами:

Заменить printf на cout, scanf на cin - C++
Помогите заменить printf на cout ,scanf на cin, у меня не получается. int main() { int i,j,k,n; float a,x; float s,p; ...

Заменить printf scanf на cout cin - C++
#include&lt;iostream.h&gt; #include&lt;math.h&gt; #pragma argsused int main(int argc, char* argv) {int i; float x,B,y; printf(&quot;\n B=&quot;);...

Cin и cout заменить на scanf и printf - C++
Препод придрался к коду и требует, чтобы я cin и cout заменил на scanf и printf. Поможете? или хотя бы пример для преобразования покажите?...

Заменить cin / cout на scanf / printf - C++
#include&lt;iostream&gt; #include&lt;locale.h&gt; #include&lt;Windows.h&gt; #include&lt;string&gt; #include &quot;123.h&quot; using namespace std; float...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
18.06.2012, 01:49
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru