Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Ада и другие языки _ Преобразование числа в строку

Автор: Krjuger 26.11.2009 1:30

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


#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <stdlib.h>

class Stroka
{ private:
char *str;
int n;
public:
Stroka(int nn);
Stroka( Stroka& olds, int nn);
void Instr ( char p[]);
void Outstr ();
~Stroka();

operator double();
Stroka( double nn);
};


Это описание класса.Интерес имеет Stroka( double nn); именно в нем и будет реализовываться необходимая задача.

Stroka::Stroka( double nn)
{
// char* temp;
int status;
str = new char;
str = ftoa (3.14, &status);
}


Вот как то так я предполагал это сделать,но мне выдает ошибку неизвесного идентификатора ftoa,хотя это является функцией описанной в stdlib.h.Если так сделать вообще невозможно,то пожалуста укажите способ как реализовать это по другому.

Автор: volvo 26.11.2009 1:41

Цитата
хотя это является функцией описанной в stdlib.h
С каких это пор? Нет и не было никогда такой функции. Пользуйся sprintf для конвертации числа в строку...

Автор: Krjuger 26.11.2009 19:02

Тогда вопрос sprintf именно преобразует число в строку или просто выведет на экран,как строку?

Автор: volvo 26.11.2009 19:14

sprintf вообще ничего не выводит на экран, она "печатает" данные в строку:

	char s[10] = {0};
double f = 3.14;
sprintf(s, "%f", f); // s = "3.140000"