![]() |
Модераторы: xvr |
![]() ![]() ![]() |
|
cooper123 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 30.7.2007 Репутация: нет Всего: нет |
для gcc
праграмма не работает тоесть выдает не правильный результат типа большое целое число а не то которое стоит в строке. почему? пробывал gcc в виндах. cygwin, потом у меня есть devc++ думал может ошибка в системе ( у меня вин2000 немецкий) установил дебиан свежий. тоже не то показывает. майкрософтовскую студию 2005 пока не установил. (не хочу ихний эксплорер) чо посоветуете, ап какую стенку бится?
Это сообщение отредактировал(а) cooper123 - 30.7.2007, 16:22 |
|||
|
||||
zkv |
|
|||
![]() ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2133 Регистрация: 23.7.2006 Где: Санкт-Петербург Репутация: нет Всего: 92 |
|
|||
|
||||
cooper123 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 30.7.2007 Репутация: нет Всего: нет |
не критичная ошибка, тоже не работает. увы.
|
|||
|
||||
zkv |
|
|||
![]() ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2133 Регистрация: 23.7.2006 Где: Санкт-Петербург Репутация: нет Всего: 92 |
достаточно критичная, чтобы появились симптомы как у тебя в чем выражается? Все так же осталось? Кстати, в последних двух y подразумевался?
|
|||
|
||||
cooper123 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 30.7.2007 Репутация: нет Всего: нет |
s="1.2345"
x=atof(s); а на консоле печатается х=309237632.0000 а должно быть х=1.2345 Добавлено через 5 минут и 41 секунду программка собственная тестовая, потому как я программирую в другой системе и захотелось проверить производительность запрограмировав некоторые функции на си по идее самое быстрое . Но для начала надо прочитать данные из файла. ну и самое простое прочитать это самое число с дробной частью. а оно читает но выдает вот такой результат. почему не знаю. Казалось бы самое элементарное. как получится присвою себе гордое звание чайника. а пока даже этого не получается. увы.... Добавлено через 8 минут и 3 секунды памахите.... |
|||
|
||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 3 Всего: 162 |
не знаю, что там у тебя... вот рабочая версия твоей программы, проверено на g++ 4.1.2:
|
|||
|
||||
cooper123 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 30.7.2007 Репутация: нет Всего: нет |
может быть я не так компилирую
gcc prob.c -o prob |
|||
|
||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 16 Всего: 196 |
Вообще-то, спецификаторы %e и %f подразумевают аргумент типа double. К ним не применяются модификаторы l. Только L (long doble).
Думаю, у тебя проблемы из-за того, что ты используешь float там, где надо использовать double, и double, где должно быть long double. |
|||
|
||||
zkv |
|
|||
![]() ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2133 Регистрация: 23.7.2006 Где: Санкт-Петербург Репутация: нет Всего: 92 |
bsa, в студии для корректной работы следует для double указывать формат с l или с L (без разницы вроде) в начале
|
|||
|
||||
cooper123 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 30.7.2007 Репутация: нет Всего: нет |
но если JackYF приводит рабочую версию программы а она у меня не идет то видимо в другом в чем то.
|
|||
|
||||
powerfox |
|
|||
![]() I wanna fork() ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3990 Регистрация: 1.10.2005 Где: Санкт-Петербург Репутация: 5 Всего: 97 |
cooper123,
|
|||
|
||||
cooper123 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 30.7.2007 Репутация: нет Всего: нет |
думаю с компиляцией что то не то. только вот как компилировать с g++ вместо gcc я не представляю.
Добавлено через 5 минут и 32 секунды powerfox отредоктировать название не получилось. |
|||
|
||||
powerfox |
|
||||||
![]() I wanna fork() ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3990 Регистрация: 1.10.2005 Где: Санкт-Петербург Репутация: 5 Всего: 97 |
Зачем этот заголовок? Поправленный код JackYF'a:
Добавлено через 2 минуты и 32 секунды
Для этого нужно выбрать редактирование первого поста.
Так же. Но это извращение. Зачем компилировать Си код компилятором С++. |
||||||
|
|||||||
cooper123 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 30.7.2007 Репутация: нет Всего: нет |
остался от предыдущих экспериментов. вроде не мешает.
но можно и убрать. в данном случае не помогает. ничто. Для этого нужно выбрать редактирование первого поста. пытался не получилось. сорри. Это сообщение отредактировал(а) cooper123 - 30.7.2007, 16:24 |
|||
|
||||
powerfox |
|
|||
![]() I wanna fork() ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3990 Регистрация: 1.10.2005 Где: Санкт-Петербург Репутация: 5 Всего: 97 |
cooper123, посмотри мой код. Там всё нормально (кроме последних 2-х чисел, так ты выбрал для них тип флоат). Если им тоже задать %g вместо %f, то нули тоже обрежутся. Читай про форматированный вывод - компилятор тут нипричём.
Это сообщение отредактировал(а) powerfox - 30.7.2007, 16:25 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С/С++: Программирование под Unix/Linux" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |