|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
08.05.2017, 09:22 | #11 |
Форумчанин
Регистрация: 09.04.2017
Сообщений: 598
|
Да, я её уже смотрел, но ведь там еще точку надо пропустить кроме цифр.
|
08.05.2017, 09:28 | #12 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Код:
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
08.05.2017, 10:29 | #13 |
Форумчанин
Регистрация: 09.04.2017
Сообщений: 598
|
Вот при такой компоновке кода компилятор ошибок не показывает. Но при исполнении выдаёт ошибку.
Код:
|
08.05.2017, 10:33 | #14 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Так какую ошибку-то?
И == 1 не надо. Во-первых в С/С++ и так можно писать if (1), if (2), if (!0) и т.п. вместо if (true) Во-вторых isdigit возвращает "A value different from zero" когда цифра. Это не обязательно 1.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
08.05.2017, 11:09 | #15 |
Форумчанин
Регистрация: 09.04.2017
Сообщений: 598
|
Если вам не трудно, попытайтесь запустить программу у себя. скриншот ошибки прикреплен.
|
08.05.2017, 11:26 | #16 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Да должно работать по идее, ну только ==1 убрать, иначе результат может быть неправильным.
http://rextester.com/JAQA86161 Наверно вы что-то странное вводите/передаете, добавьте вывод str1[j] перед проверкой. UPD: а, так а зачем цикл до 23? Надо до strlen.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
08.05.2017, 15:07 | #17 |
Форумчанин
Регистрация: 09.04.2017
Сообщений: 598
|
Да, с циклом согласен, но 23 это от начала да так и осталось, тут за идею борьба идет))
Скопировал ваш код, в отдельной программе его построил и запустил, работает. Только содержимое массива сделал $333.34 Выводит 333.34 т.е. как задумано. Скорректировал свою программу, т.е. сделал копию вашей, выводит 333.00 Почему - ваще не втыкаю!!! Полная копия! Только мне getch(); ставить приходится, иначе ничего увидеть не успеваю. А вот когда программа не скорректирована, т.е. когда надо вводить то же самое $333.34 выдает показанную ошибку. т.е. компилятор молчит, а ошибка вылетает в процессе исполнения. Такие дела. Код:
А в не скорректированной ==1 убрал, толку нет также. Может VS 2088 барахлит? Последний раз редактировалось KAMLS; 08.05.2017 в 15:09. Причина: опечатка |
08.05.2017, 15:20 | #18 |
Форумчанин
Регистрация: 09.04.2017
Сообщений: 598
|
Такие странные дела..
Убрал в своей скорректированной программе setlocale(LC_ALL,"rus"); и стало срабатывать как надо 333.34!!! При чем тут setlocale(LC_ALL,"rus");?!! |
08.05.2017, 15:22 | #19 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Так я ж сказал почему. Цикл идет дальше конца нормального содержимого строки и читает всякий мусор, на который срабатывает какая-то отладочная проверка корректности переданного символа внутри isdigit.
А при Код:
как и при Код:
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. Последний раз редактировалось Alex11223; 08.05.2017 в 15:25. |
08.05.2017, 15:25 | #20 |
Форумчанин
Регистрация: 09.04.2017
Сообщений: 598
|
Переделал j<23 на j<strlen(str1) и стало работать с вводом значения а не с установленным в программе.
Но осталась блин проблема с setlocale(LC_ALL,"rus"); пишет .00 вместо .34 Подскажите пожалуйста почему? |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Копирование значений ячеек из одной строки в другую | ольгаг | Microsoft Office Excel | 1 | 19.12.2016 10:47 |
умножение одной матрицы на другую (выводить не только ответ, но и ход решения) Delphi или C++ | carrie bradshaw | Помощь студентам | 0 | 29.04.2014 00:20 |
Переход с одной строки на другую в DBF сканировании | danxiel | Помощь студентам | 2 | 04.09.2012 14:15 |
MS SQL SERVER 2005 копирование таблицы из ОДНОЙ БД В другую или перенести все строки из одной таблицы в другую | reihtmonbern | БД в Delphi | 4 | 17.07.2012 23:25 |
Перенос данных из строки одной таблицы БД в другую БД | Optigood | БД в Delphi | 15 | 12.05.2010 17:07 |