| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > модификация типа: char*-> int (C++) |
| Автор: serendip 11.1.2006, 01:47 |
| Есть строка типа char* из трёх символов, последний символ - символ конца строки. Первые два содкржат цифры, которые вместе образуют десятичное число. Как перевести это число в integer?(С++) |
| Автор: serendip 11.1.2006, 02:32 |
| int atoi( const char* s) |
| Автор: serendip 12.1.2006, 00:06 | ||
| Уважаемые господа программистыыыыыыы!!!!!!! Данная функция переводит только первый символ строки, т.е.
в принципе, понятно почему. Но как же быть тогда?!!! |
| Автор: blackofe 12.1.2006, 01:18 | ||||
ты чем компилишь? у меня vc++ 7.1 на это
выдал
в общем, довольно ожидаемо. |
| Автор: serendip 12.1.2006, 01:24 | ||
| Компилю С++ Builder 6.0 я сначала предположила:
Но так к сожалению: [C++ Error] Unit1.cpp(126): E2034 Cannot convert 'int' to 'const char *' [C++ Error] Unit1.cpp(126): E2342 Type mismatch in parameter '__s' (wanted 'const char *', got 'char') Не знаю, может ещё где ошиблась.. я правда потом в Memo вывожу: Form1->Memo2->Lines->Add(IntToStr(dv[i])); хотя тут вроде всё в порядке Да, у меня вышеуказанный код тоже замечательно работает.... |
| Автор: _hunter 12.1.2006, 11:39 |
| если пишем в билдере -- зачем atoi()? вполне достаточно и StrToInt()... |
| Автор: blackofe 12.1.2006, 21:59 | ||||
ну так все же нормально разжевано: компилятор ожидает const char *, а вы ему char подсовываете. в вашем примере:
|
| Автор: serendip 16.1.2006, 02:26 |
| Благодарю |
| Автор: LuckLess 16.1.2006, 16:27 | ||
можно еще попользовать строковые потоки...
|
| Автор: threef 16.1.2006, 20:17 | ||
Много чё можно использовать
для этого конкретного случая, например. |
| Автор: serendip 17.1.2006, 19:58 |
| Спасибо |