Модераторы: bsa

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Зачем использовать старый синтаксис? 
:(
    Опции темы
and277
Дата 10.4.2009, 18:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 9.4.2009

Репутация: нет
Всего: нет



Читаю форум... И часто вижу в листингах старый стиль зоголовков типа
 #include <stdio.h>
#include <conio.h>
#include <iostream.h>

Какое преимущество они дают по сравнению с новым стилем без.h? Ведь новый стандарт кажется считает их устаревшими. Поправьте если я не прав...

Также заметил, что в новых учебниках практически нету примеров конструкций ввода вывода - scanf(), printf() и тд. Одни cout << и cin >>.  А на форуме засилие scanf() и printf().

Есть ли те задачи которые не возможно решить одними cout и cin + флаги форматирования и тд. Возможно полностью отказаться от scanf(), printf() ?


Это сообщение отредактировал(а) and277 - 10.4.2009, 18:41
PM MAIL   Вверх
pan2004
Дата 10.4.2009, 18:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 357
Регистрация: 28.7.2007

Репутация: 2
Всего: 9



Цитата(and277 @  10.4.2009,  18:38 Найти цитируемый пост)
Какое преимущество они дают по сравнению с новым стилем без.h

Никакого. Более того - на современных компиляторах они не работают.
Но до сих пор народ пользуется такими компиляторами как VS6, Borland C++3.1, которые ничего не знают о новых заголовках.

Кроме того, есть C а есть C++. В первом используются и scanf и printf.


--------------------
Qt4/C++ fan
WinXP SP3: MSVC++2005 Qt4.5.1 Boost1.39
сыграем в дурака?
PM MAIL   Вверх
zim22
Дата 10.4.2009, 18:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(and277 @  10.4.2009,  18:38 Найти цитируемый пост)
Возможно полностью отказаться от scanf(), printf() ?

Гугл рекомендует использовать потоки (std::cin, std::cout) только для логирования. Для всего остального желательно использовать printf, scanf
http://google-styleguide.googlecode.com/sv...ide.xml#Streams




--------------------
PM MAIL   Вверх
UnrealMan
Дата 10.4.2009, 19:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 722
Регистрация: 30.3.2006

Репутация: 5
Всего: 32



Цитата(zim22 @  10.4.2009,  18:58 Найти цитируемый пост)
Гугл рекомендует использовать потоки (std::cin, std::cout) только для логирования. Для всего остального желательно использовать printf, scanf

Гугл вообще очень много сомнительных подходов рекомендует использовать.

Это сообщение отредактировал(а) UnrealMan - 10.4.2009, 19:09
PM MAIL   Вверх
GoldFinch
Дата 10.4.2009, 19:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Завсегдатай
Сообщений: 2141
Регистрация: 30.11.2008

Репутация: 6
Всего: 26



printf более читабелен чем std::cout , впрочем для реверсера тоже
PM MAIL ICQ   Вверх
zim22
Дата 10.4.2009, 19:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(UnrealMan @  10.4.2009,  19:08 Найти цитируемый пост)
Гугл вообще очень много сомнительных подходов рекомендует использовать.

касательно потоков я уже не в одном месте встречаю нарекание о том, что они будут выводить, чего программист не хотел:

Пример из журнала Overload 89. Там автор рекламирует свою библиотеку форматирования  FastFormat smile
Код
wchar_t const* name = L"The Thing";
  int            mass = 200;
  
  std::cout << "name=" << name << ",
     mass=" << mass  << "kg" << std::endl;


выведет:  name=001237f0, mass=200kg

Это сообщение отредактировал(а) zim22 - 10.4.2009, 19:22


--------------------
PM MAIL   Вверх
azesmcar
Дата 10.4.2009, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



zim22
для вывода wchar_t существует std::wcout

не знаю с чего гугл взял что printf, scanf лучше - но есть более авторитетные источники утверждающие обратное и я с ними полностью согласен.

Это сообщение отредактировал(а) azesmcar - 10.4.2009, 19:41
PM   Вверх
and277
Дата 10.4.2009, 19:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 9.4.2009

Репутация: нет
Всего: нет



Спасибо за ответы. НО:
zim22, что Есть логирование в твоем понимание?
GoldFinch, а что за "реверсер"?     


PM MAIL   Вверх
zim22
Дата 10.4.2009, 19:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(and277 @  10.4.2009,  19:25 Найти цитируемый пост)
что Есть логирование в твоем понимание?

вывод текста на устройство вывода  smile 



--------------------
PM MAIL   Вверх
Dem_max
Дата 10.4.2009, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: 4
Всего: 39



вот 2 строки выводят практически одно и тоже
Код

wsprintf(str_hex, "0x%04X ", int_hex);
static_cast<std::ostringstream&>(std::ostringstream() << std::hex << std::setiosflags(std::ios::uppercase | std::ios::showbase) << std::setfill('0') << std::setw(6) << std::internal << aNumber).str();

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

Это сообщение отредактировал(а) Dem_max - 10.4.2009, 19:31


--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
and277
Дата 10.4.2009, 19:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 9.4.2009

Репутация: нет
Всего: нет



Цитата(Dem_max @ 10.4.2009,  19:30)
вот 2 строки выводят практически одно и тоже
Код

wsprintf(str_hex, "0x%04X ", int_hex);
static_cast<std::ostringstream&>(std::ostringstream() << std::hex << std::setiosflags(std::ios::uppercase | std::ios::showbase) << std::setfill('0') << std::setw(6) << std::internal << aNumber).str();

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

Выберу - 1ое. smile 

Всем спасибо за ваши ответы.
Вообщем я сделал вывод - cin  и cout  - не панацея. Нужно использовать и sprintf() и printf() и тд исходя из конкретной задачи.

 

Это сообщение отредактировал(а) and277 - 10.4.2009, 19:47
PM MAIL   Вверх
azesmcar
Дата 10.4.2009, 19:50 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



Dem_max да вы извращенец..printf тоже можно так написать чтоб от него тошнило smile

Код

stream << ("0x") << hex << uppercase << setfill('0') << setw(4) << int_hex;


Dem_max,
вот этого вполне достаточно smile 

Это сообщение отредактировал(а) azesmcar - 10.4.2009, 19:59
PM   Вверх
zim22
Дата 10.4.2009, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



если std:: убрать, то покрасивше смотрится:
Код
std::ostringstream ws;
  ws << hex << uppercase << showbase << setfill('0')  
     << setw(6) << internal << aNumber;
  std::string s = ws.str();




--------------------
PM MAIL   Вверх
Lazin
Дата 10.4.2009, 20:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 27
Всего: 154



главный недостаток printf и scanf - это то, что они не проверяются компилятором, можно случайно ошибиться в порядке или количестве аргументов и программа упадет или испортит память, еще некоторые любят делать так
Код

char* msg = ...//берем данные из файла, от пользователя или получаем по сети
....
printf(msg);
библиотека iostream таких недостатков лишена
к тому-же типы данных, которые она может выводить не ограничены небольшим набором POD типов данных, можно реализовать операторы << и >> для своих классов и выводить с их помощью данные в файл, в консоль итд

Добавлено через 3 минуты и 6 секунд
если не нравится как выглядит код, использующий потоки, можно использовать библиотеку boost::format
Код

cout << format("writing %s,  x=%s : %d-th step \n") % "toto" % 40.23 % 50;

PM MAIL Skype GTalk   Вверх
UnrealMan
Дата 10.4.2009, 20:25 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 722
Регистрация: 30.3.2006

Репутация: 5
Всего: 32



Цитата(zim22 @  10.4.2009,  19:19 Найти цитируемый пост)
касательно потоков я уже не в одном месте встречаю нарекание о том, что они будут выводить, чего программист не хотел

Можно подумать,

Код
std::printf("name=%s, mass=%dkg", name, mass);

выведет то, что хотел программист smile

А как тебе вот такая ошибочка?

Код
void f(std::size_t n, const char *s)
{
    std::printf("%d%s", n, s);
}

Сколько радости будет при переносе корректно работающей программы на 64-битную платформу smile

Цитата(Dem_max @  10.4.2009,  19:30 Найти цитируемый пост)
какую из строчек вы выберете для написания в свое йпроге ?

wsprintf - нестандартная функция. Вместо того чтобы тупо копировать код с другого форума, лучше бы подумал, что именно делается в каждом случае.
PM MAIL   Вверх
Anikmar
Дата 10.4.2009, 20:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2513
Регистрация: 26.11.2006
Где: Санкт-Петербург

Репутация: 5
Всего: 59



Цитата(Lazin @  10.4.2009,  20:15 Найти цитируемый пост)
cout << format("writing %s,  x=%s : %d-th step \n") % "toto" % 40.23 % 50;

А этой штукой память испортить можно?
PM MAIL ICQ   Вверх
Lazin
Дата 10.4.2009, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 27
Всего: 154



оно type safe
PM MAIL Skype GTalk   Вверх
Cheloveck
Дата 10.4.2009, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1578
Регистрация: 26.7.2008
Где: Тула

Репутация: 5
Всего: 32



Почитайте книгу Скотта Майерса "Эффективное использование C++" и у Вас отпадёт желание использовать сишный синтаксис вообще. Давайте будим прогрессивными и будим различать Си и C++. 
Цитата

"...факт остаётся фактом: операторы scanf и printf далеки от совершенства. В частности они не осуществляют контроль типов и к тому же нерасширяемы. Поскольку контроль типов и расширяемость - краеугольный камень идеологии C++, то лучше всего с самого начала во всём опираться на них. Кроме того, семейство функций printf/scanf отделяют переменные, которые необходимо прочитать или записать, от форматирующей информации, управляющей записью и чтением, в точности так, как это делает FORTRAN. Настало время распрощаться с пятидесятыми." 

Скотт Майерс "Эффективное использование C++. 50 рекомендаций по улучшению ваших программ и проектов", Правило 2 - "Предпочитайте <iostream> использованию <stdio.h>", стр 29



--------------------
user posted image
PM Jabber   Вверх
GoldFinch
Дата 10.4.2009, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Завсегдатай
Сообщений: 2141
Регистрация: 30.11.2008

Репутация: 6
Всего: 26



Цитата(UnrealMan @  10.4.2009,  21:25 Найти цитируемый пост)
wsprintf - нестандартная функция.

user32.wsprintf - это winapi, самая что ни есть стандартная
PM MAIL ICQ   Вверх
Cheloveck
Дата 10.4.2009, 22:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1578
Регистрация: 26.7.2008
Где: Тула

Репутация: 5
Всего: 32



Цитата

user32.wsprintf - это winapi, самая что ни есть стандартная

а с каких пор winapi стали стандартными? =)

Добавлено через 10 минут и 29 секунд
Цитата

cout << format("writing %s,  x=%s : %d-th step \n") % "toto" % 40.23 % 50;

во извращение =)

Код

cout << "writing toto, x= " << 40.23 << " : " << 50 << "-th step" << endl; 

не катит уже?


--------------------
user posted image
PM Jabber   Вверх
Lazin
Дата 10.4.2009, 22:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 27
Всего: 154



Цитата(GoldFinch @  10.4.2009,  22:11 Найти цитируемый пост)
user32.wsprintf - это winapi, самая что ни есть стандартная 

lol
в user32.dll много разных функций, и что, все они имеют какое-то отношение к стандарту языка?
PM MAIL Skype GTalk   Вверх
azesmcar
Дата 10.4.2009, 22:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



Цитата

user32.wsprintf - это winapi, самая что ни есть стандартная 

Речь шла о стандартных функциях С++, а так конечно функция "zuzu" из библиотеки "matumba" написанной Васей Пупкиным на первом курсе канализационного факультета университета водопроводчиков - вполне стандартна для этой библиотеки. smile 

Цитата

во извращение =)

Выделить всёкод C++
1:
    
cout << "writing toto, x= " << 40.23 << " : " << 50 << "-th step" << endl; 

не катит уже? 

не всегда, иногда нужно отформатировать строку по конкретному формату. Например если вам понадобится хранить формат в конфигурационном файле и форматировать в соответствии с ним.

Это сообщение отредактировал(а) azesmcar - 10.4.2009, 22:39
PM   Вверх
Cheloveck
Дата 10.4.2009, 22:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1578
Регистрация: 26.7.2008
Где: Тула

Репутация: 5
Всего: 32



Цитата

cout << format("writing %s,  x=%s : %d-th step \n") % "toto" % 40.23 % 50;

во извращение =)

Код

cout << "writing toto, x= " << 40.23 << " : " << 50 << "-th step" << endl; 

не катит уже?


--------------------
user posted image
PM Jabber   Вверх
Lazin
Дата 10.4.2009, 22:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 27
Всего: 154



Цитата(Cheloveck @  10.4.2009,  22:19 Найти цитируемый пост)

Код

cout << format("writing %s,  x=%s : %d-th step \n") % "toto" % 40.23 % 50;


во извращение =)
    
Код

cout << "writing toto, x= " << 40.23 << " : " << 50 << "-th step" << endl; 


не катит уже?

монгим нравится printf-like синтаксис, он часто встречается в документации, он зачастую удобнее чем iostream, это своеобразный DSL для описания форматирования, одним словом - lingua franca
boost::format совместим с printf и может его заменить, но при этом он безопасен


Это сообщение отредактировал(а) Lazin - 10.4.2009, 22:55
PM MAIL Skype GTalk   Вверх
Dmi3ev
Дата 10.4.2009, 23:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1698
Регистрация: 28.11.2007

Репутация: 13
Всего: 41



Цитата

Никакого. Более того - на современных компиляторах они не работают.
Но до сих пор народ пользуется такими компиляторами как VS6, Borland C++3.1, которые ничего не знают о новых заголовках.

+ к этому хочу добавить, что Borland C++ Builder 6 довольно популярен, а там как раз все по-старому... сведения о популярности я взял с винграда (проводился тут опрос и шестерка лидировала среди остальных), про популярность в сравнении с VS, CodeBlocks  и др. я не говорил, а то сейчас начнется  smile  


--------------------

PM MAIL   Вверх
sdukshis
Дата 11.4.2009, 00:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 92
Регистрация: 23.3.2009

Репутация: нет
Всего: 1



По моему мнению главная проблема printf() и scanf() это не безопасность типов (надо самому смотреть, что пишешь), а именно невозможность расширить функционал на свои собственные классы.

Использование потоков позволяет это сделать легко и очень удобно.

Так же,  не стоит забывать, что потоки позволяют обрабатывать ошибки с помощью исключений.

PM MAIL   Вверх
zim22
Дата 11.4.2009, 06:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(Cheloveck @  10.4.2009,  22:05 Найти цитируемый пост)
Почитайте книгу Скотта Майерса "Эффективное использование C++" и у Вас отпадёт желание использовать сишный синтаксис вообще.

почитал.

Цитата

Как ни обидно мне это признавать, в ряде случаев имеет смысл вернуться к старому и проверенному способу(имеется ввиду использование printf, scanf). Во-первых, некоторые реализации операций потоков ввода/вывода менее эффективны, чем соответствующие операции С... И наконец, поскольку классы библиотеки потоков ввода/вывода имеют конструкторы, а функции <stdio.h> - нет, в редких случаях существенным будет порядок инициализации статических объектов и стандартная библиотека С окажется более удобной просто потому, что вы можете пользоваться без опасений.

Скотт Майерс "Эффективное использование C++. 50 рекомендаций по улучшению ваших программ и проектов", Правило 2 - "Предпочитайте <iostream> использованию <stdio.h>", стр 30-31



--------------------
PM MAIL   Вверх
and277
Дата 11.4.2009, 06:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 9.4.2009

Репутация: нет
Всего: нет



zim22, выходит Майерс и сам до конца не уверен. smile 

А что папа Страуструп пишет про это? smile 
PM MAIL   Вверх
Cheloveck
Дата 11.4.2009, 13:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1578
Регистрация: 26.7.2008
Где: Тула

Репутация: 5
Всего: 32



zim22, 
Цитата

...в редких случаях существенным будет порядок инициализации статических объектов...

почему-то я сомневаюсь, что все кругом пишут код, где критична скорость выполнения. Один-два конструктора особо не затормозят. Майерс сделал оговорку, но мог бы и не говорить, тогда бы и никто ничего не узнал, но если читать книгу внимательно, то видно, что он уделяет внимание всем мелочам, а текущая проблема, имхо, мелочь))

Обратите внимание на сабж правила!!!

Это сообщение отредактировал(а) Cheloveck - 11.4.2009, 13:07


--------------------
user posted image
PM Jabber   Вверх
zim22
Дата 11.4.2009, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(Cheloveck @  11.4.2009,  13:06 Найти цитируемый пост)
Обратите внимание на сабж правила!!!

В оригинале это было не правило:
Цитата

Item 2:  Prefer <iostream> to <stdio.h>

Т.е. это просто номер пункта.
Лично я printf функции не использую. Потоки проще и удобней.

Это сообщение отредактировал(а) zim22 - 11.4.2009, 13:29


--------------------
PM MAIL   Вверх
and277
Дата 11.4.2009, 17:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 9.4.2009

Репутация: нет
Всего: нет



Цитата(zim22 @ 11.4.2009,  13:29)
Лично я printf функции не использую. Потоки проще и удобней.

Я так же не использую. Тем более в новых учебниках их избегают. 
PM MAIL   Вверх
adejneka
Дата 12.4.2009, 07:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 105
Регистрация: 8.7.2005
Где: Москва, Россия

Репутация: нет
Всего: 11



Цитата(Lazin @ 10.4.2009,  20:15)
главный недостаток printf и scanf - это то, что они не проверяются компилятором, можно случайно ошибиться в порядке или количестве аргументов и программа упадет или испортит память

Это недостаток не языка, а отдельных компиляторов: например, GNU C проверяет типы и количество аргументов *printf, *scanf (в том числе у вариантов этих функций, написанных пользователем - при использовании нестандартных деклараций), если строка формата известна на этапе компиляции.
PM MAIL   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0815 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.