![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
irvis |
|
|||
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 25.4.2006 Репутация: нет Всего: нет |
у меня есть массив символов из него надо получить число.
как? например: строка "7899" мне надо получить число 7899 вот кусок кода из моей програмки
вот str1 этот массив символов, как мне теперь получить число? stroka[i] это вводима строка, она должна быть именно строкой Это сообщение отредактировал(а) irvis - 21.6.2006, 09:32 |
|||
|
||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
atoi(str1)?
Добавлено @ 09:35 или самому написать
Это сообщение отредактировал(а) MAKCim - 21.6.2006, 09:36 -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
irvis |
|
|||
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 25.4.2006 Репутация: нет Всего: нет |
я не знаю что такое unsigned
и не понимаю (str[i]-48) что за число 48? |
|||
|
||||
MAKCim |
|
||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
книги читай
48 - код '0', соответственно str[i]-48 - числовой эквивалент символа из '0'...'9' -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||
|
|||||
irvis |
|
|||
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 25.4.2006 Репутация: нет Всего: нет |
спасибо!
|
|||
|
||||
Athlon |
|
||||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 100 Регистрация: 15.1.2006 Где: Украина:: Запорож ье Репутация: нет Всего: нет |
попробуй перевести с английского ![]()
Как известно в таблице ASCII цифры 0..9 расположены последовательно, число 48 (0х30) - положение нуля в таблице ASCII т.е. строчка
инициализирует num номером символа str[i] в таблице ASCII, и чтобы получить значение соответствующей цифры, тебе нужно скоректировать этот номер на 48 (0х30). |
||||||
|
|||||||
sergejzr |
|
|||
![]() Un salsero ![]() Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 19 Всего: 360 |
MAKCim, пиши лучше сразу str[i]-'0'
irvis, вот тебе кусочек кода с проверками и всем, чем нужно ![]()
|
|||
|
||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
разница? ![]() -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
sergejzr |
|
|||
![]() Un salsero ![]() Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 19 Всего: 360 |
1) Вопросов, что такое 48 не возникнет
2) Всё конечно ASCII, но не факт, что везде 3) Логичнее и понятнее, чем запоминать цифры. |
|||
|
||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
sergej.z
учту ![]() -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
EvgenZ |
|
|||
![]() Freedom in me ![]() ![]() Профиль Группа: Участник Сообщений: 407 Регистрация: 3.8.2006 Репутация: 1 Всего: 11 |
А как лучше сделать, чтобы char содержащий двоичное число (101010101001) можно было инрементировать, складывать и т.д. Переводить его в инт, делать что-то и опять перводить в char?
-------------------- <удалено администрацией форума> |
|||
|
||||
SparF |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 387 Регистрация: 14.9.2006 Где: Санкт-Петербург/М осква Репутация: нет Всего: 18 |
Очень удобно в этом случае использовать функции sscanf() и sprintf()
один из самых больших плюсов - предоставляемые ими шаблоны форматной строки. -------------------- Люди, не пользуйтесь пиратским программным обеспечением - переходите на Linux! |
|||
|
||||
EvgenZ |
|
|||
![]() Freedom in me ![]() ![]() Профиль Группа: Участник Сообщений: 407 Регистрация: 3.8.2006 Репутация: 1 Всего: 11 |
SparF,
![]() -------------------- <удалено администрацией форума> |
|||
|
||||
SparF |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 387 Регистрация: 14.9.2006 Где: Санкт-Петербург/М осква Репутация: нет Всего: 18 |
Example.
Output: Benny -> 29 Если признаться, то самому было влом писать, пример взят из http://www.cplusplus.com/ref/cstdio/sscanf.html sprintf() работает также как и обычный printf(), только вывод - в строку -------------------- Люди, не пользуйтесь пиратским программным обеспечением - переходите на Linux! |
|||
|
||||
EvgenZ |
|
|||
![]() Freedom in me ![]() ![]() Профиль Группа: Участник Сообщений: 407 Регистрация: 3.8.2006 Репутация: 1 Всего: 11 |
хм насколько я понял получается тотже atoi (перевод из char в int) ? Или я не понял соли?
-------------------- <удалено администрацией форума> |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |