IntToStr и StrToInt в C++
Заранее большое СПАСИБО !:roll:
Вот столкнулся с еще одной проблемой как перевести String( Char * ) в Integer и наоборот в MVC++.
Заранее большое СПАСИБО !:roll:
Есть ф-ции семейства atoi(...).
P.S. Ничего личного.
А я бы уже штрафовать начал за такие вопросы.
P.S. Ничего личного.
Конечно СОРРИ за такие вопросы просто нигде не смог найти, а сдесь всегда найдутся добрые люди которые ответят.:D
А я бы уже штрафовать начал за такие вопросы.
Полностью согласен. Тут вообще есть модераторы? Что-то не очень видно их работы...
Кстати, введение штрафных санкций надо сделать одновременно с составлением FAQ из наиболее часто задаваемых вопросов на форуме. Кто возьмется?
А я бы уже штрафовать начал за такие вопросы.
Поддерживаю.
Но если v1rus0k предложит штрафовать такие ответы:
А я бы уже штрафовать начал за такие вопросы.
Его тоже поддержу :)
В Delphi и CBuilder однозначно, что это ф-ии IntToStr/StrToInt.
По VisualC посмотрел 3 довольно серьезных книг
Олафсен MFC и Visual C++. Энциклопедия программиста.
Арчер Visual C++Net. Библия пользователя
Круглинский Прогр. на Visual C++. Для профессионалов.
Почти 3000 страниц. И ни слова о переводе int2char или обратно.
int i = 5;
char buf[10];
itoa(i, buf 10);
i = atoi(buf);
sprintf(buf, "%d", i);
Но все это даже не C++, а С.
Поддерживаю.
Но если v1rus0k предложит штрафовать такие ответы:Его тоже поддержу :)
В Delphi и CBuilder однозначно, что это ф-ии IntToStr/StrToInt.
По VisualC посмотрел 3 довольно серьезных книг
Олафсен MFC и Visual C++. Энциклопедия программиста.
Арчер Visual C++Net. Библия пользователя
Круглинский Прогр. на Visual C++. Для профессионалов.
Почти 3000 страниц. И ни слова о переводе int2char или обратно.
int i = 5;
char buf[10];
itoa(i, buf 10);
i = atoi(buf);
sprintf(buf, "%d", i);
Но все это даже не C++, а С.
[SIZE=3]ОГРОМНОЕ СПАСИБО ! РАБОТАЕТ ! =)[/SIZE]
Я ведь говорил что люди хорошие всегда найдутся и не ошибся !:} Ладно пошёл я физику учить у меня послезавтра ExamИН (живу в другой стране) а потом вас опять вопросами засыплю ! СИ Я :}
using namespace std;
int main(int argc, char *argv[])
{
char* a = "12324321";
int sjaaki=0; //можно и лонг и что угодно
int ten = 1;
for (int i=strlen(a); i>0; i--)
{ sjaaki += (a[i-1]-'0') * ten;
ten *= 10;
}
cout << sjaaki << endl;
system("PAUSE");
return EXIT_SUCCESS;
}
Кстати, введение штрафных санкций надо сделать одновременно с составлением FAQ из наиболее часто задаваемых вопросов на форуме. Кто возьмется?
Так почти в каждом разделе такое есть. Например в разделе студенты, где этому вопросу место. Но их, мне кажется, мало кто читает.
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
char* a = "12324321";
int sjaaki=0; //можно и лонг и что угодно
int ten = 1;
for (int i=strlen(a); i>0; i--)
{ sjaaki += (a[i-1]-'0') * ten;
ten *= 10;
}
cout << sjaaki << endl;
system("PAUSE");
return EXIT_SUCCESS;
}
это вроде как проверить булево число:
string sVar;
fstream io("temp.tmp", ios::in | ios::out | ios::trunc);
io<<boolalpha<<bVar;
io.seekp(0, 0);
io>>sVar;
io.close();
remove("temp.tmp");
if ( sVar.length() > 3 && sVar.length() < 5)
{
cout<<"true"<<endl;
}
else if ( sVar.length() > 4 && sVar.length() < 6)
{
cout<<"false"<<endl;
}
else
{
cout<<"undefined"<<endl;
}
return 0;
:-D
для прекрасных дам...
using namespace std;
int mla(char* src)
{
int ten = 1, i=0, j=0, sjaaki=0;
if (src[0]=='-') j++;
for (int i=strlen(src)-j; i>0; i--)
{
sjaaki += (src[i-1+j]-'0') * ten;
ten *= 10;
}
if (j) sjaaki*=-1;
return sjaaki;
}
int main(int argc, char *argv[])
{
int a = mla("-4000");
cout << ++a << endl;
system("PAUSE");
return EXIT_SUCCESS;
}
vja Ты по професии проктолог? И всегда гланды через анальное отверствие тянеш?
Zushenskiy, Ты забыл проверить ошибку записи на диск, на ошибку чтения с диска, не проверяеш црц прочитаной строки (вдруг краш памяти)? Не обрабатываеш исключительной ситуации деления на 0, и не учитываеш температуру Луны в третьей четверти, после 15:00.
vja Ты по професии проктолог? И всегда гланды через анальное отверствие тянеш?
ну так вперед исправь мои ошибки собери в библиотечку и продай я вижу ты хорошо разобрался в этом алгоритме. долго разбирался? на тебя надеется вся страна. удачи:D
{
int ten = 1, i=0, j=0, sjaaki=0;
if (src[0]=='-') j++;
for (int i=strlen(src)-j; i>0; i--)
{
sjaaki += (src[i-1+j]-'0') * ten;
ten *= 10;
}
if (j) sjaaki*=-1;
return sjaaki;
}
Прошу прощения за продолжение флуда, но в этом коде обрабатываются только целые. А как же вещественные? А как же различные разделители (точка или запятая между целой и дробной частью, пробелы, запятые или апострофы между тройками порядков)?.. Как быть с экспоненциальной формой? Я уже не говорю об иррациональных числах. ;)
P.S. Используйте itoa/atoi и не заморачивайтесь на нестандартные решения, если только вам не требуется написать обработчик чисел в любом формате. :)
vja Ты по професии проктолог? И всегда гланды через анальное отверствие тянеш?
хех, нечего сказать - жуем дирол... :)
спору нет - решение не проверяет ни ошибок и работает только с целыми, но хотел показать идею и всего то, а на вещественные уж дописать - раз плюнуть...
по поводу использования атои - не всегда они бывают доступны, например при работе с контроллерами...
тока не надо флуда про компиляторы и етц...
HMODULE res=GetModuleHandle(0);
так вот пытаюсь преобразовать res в строку при помощи стандартных ф-й а оно выдаёт ошибку типов.В чём проблема?
Ведь HMODULE- 32 разрядное целое,
и long-32 разрядное целое
так почему они друг с другом не конектят -а?
Спасибо всем.....:confused:
это два разных типа но имеющие один размер
char szBuffer[25] = "";
sprintf(szBuffer, "%d", (int)res);
или
char szBuffer[25] = "";
sprintf(szBuffer, "%d", reinterpret_cast<int>(res));
Если не трудно-ответь на вопрос: HMODULE(HINSTANCE) ето просто переменные-32разрядные целые? и если такую переменную я преобразую в строку и выведу её при помощи скажем MessageBox(),то я увижу адрес самой переменной а не адрес загруженого модуля?
Или же я получю адрес модуля?
MSDN по этому поводу молчит.
И можно ли обходится без этих типов данных а например тех с которыми привык работать (BYTE,WORD,DWORD) ? И подскажи пожалуста как отключить проверку типов(достала)?
Спасибо:)