int main(int argc, char *argv[]) { int
x = 0; double y = 0; char s[5] = {0}; char ns[10] = {0}; printf("Введите число: "); scanf("%s",s); x = atoi(s); //полдучим только целое число y = atof(s); // получим дробное даже если на входе целое. printf("\nx = %i\t y = %f\n",x,y); sprintf(ns,"%i",x);//заносим в строку число printf("%s\n",ns);//печать строки-числа system("PAU
SE"); return EXIT_SUCCESS; }
Использование sprintf в C++ нежелательно, т.к. это функция из C и могут возникнуть проблемы при использовании ее с шаблонами. В C++ существует класс stringstream, который работает так же как и другие потоки ввода-вывода, но все операции проводятся со строкой, которую затем можно извлечь:
Код:
#include <sstream> #include <string> using namespace std;
void main() { stringstream s; s << 42;
string asString = s.str(); }
Также есть классы istringstream (только для ввода), ostringstream(только для вывода) и их unicode аналоги: wstringstream, wistringstream, wostringstream.
----- Good judgement comes from experience, and experience comes from bad judgement.
Ответ отправил: Ross, Практикант
Ответ отправлен: 10.06.2009, 00:36
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 250723
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 169054:
Уважаемые эксперты, подскажи как записать данные в файл с именем которое задаст пользователь.
Отвечает Victor Pyrlik, Модератор :
Здравствуйте, Biathlonfan. 1. получить это имя от пользователя 2. открыть/создать файл с этим именем 3. записать данные 4. закрыть файл 5. сообщить пользователю
Ответ отправил: Victor Pyrlik, Модератор
Ответ отправлен: 06.06.2009, 21:45
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 250549
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Отвечает Hellknight, 1-й класс :
Здравствуйте, Biathlonfan! Вы должны будете завесте переменную строкового типа, и используя функцию сохранения в файл, указать на эту переменную
Ответ отправил: Hellknight, 1-й класс
Ответ отправлен: 07.06.2009, 10:02
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 250562
на номер 1151 (Россия) |
Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Нам очень важно Ваше мнение об этом выпуске рассылки. Вы можете оценить этот выпуск по пятибалльной шкале, пройдя по ссылке: оценить выпуск >>
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.