MPI3
Хм...
offline
Опыт:
24,597Активность: |
Какой-то глюк с кодом на С++
Не знал где тему создать: здесь или в трактире, этот раздел мне показался более подходящим.
Смысл в том, что мне надо сделать алгоритм вычисления и вывести число в файл. С последним как раз проблемы. У меня есть учебник, сделал шаблон, разобрал, оптимизировал - удалил лишнее, там всё работает. У меня же появилась проблема с тем, что компилятор путает типы переменных. Отрывок кода: Код:
Ошибка: Цитата:
Почему-то он char воспринимает как int, пытался char pw[ ] = (char)pwo - не помогло. » Если что, то вот тот пример из учебника #include <math.h> #include <fstream.h> #include <string.h> #include <conio.h> #include <stdio.h> void main() { ofstream out("text.txt"); char str[ ] = "text"; out.write(str, strlen(str)); out.close(); } P.S. тему чуть не назвал "Какой-то глюк с котом на С++" |
|
21.06.2009, 19:09 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
Цитата:
это смешно char - "маленькое" целое(символьный тип) long double - длинное число с точкой char[] - массив чаров, где число в скобках генерируется при инициализации переменной, т.е. Код:
Делай выводы.. ты написал такую бредню, что я даже не могу сообразить что здесь исправлять. Отредактировано ScorpioT1000, 21.06.2009 в 20:10. |
|
21.06.2009, 20:03 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
MPI3
Хм...
offline
Опыт:
24,597Активность: |
ScorpioT1000
поверь форматы я знаю)) Короче, мне нужно вывести число p. напрямую не выводится, я взял дополнительную переменную pw, пытался как char. Не получилось. Почему-то оператор out.write реагирует только на char[ ]. Это какая-то разновидность char, типо *char. как я понял. Цитата:
поэтому я специально в конце добавил пример по которому делал=))) |
|
21.06.2009, 20:10 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
дак преобразуй к чару со звездой чтоб получились ячейки в массиве чаров:
[ 1цифра | 2цифра | 3цифра | Nцифра | \0 ] и вобще для этого есть ф-ции число в чар* |
21.06.2009, 20:13 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
Код:
J добавил: Цитата:
|
|
21.06.2009, 20:20 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
MPI3
Хм...
offline
Опыт:
24,597Активность: |
ScorpioT1000
какие? Если серьёзно я только на базовом уровне знаю c++ J Цитата:
|
|
21.06.2009, 20:21 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
у меня работает, попробуй без "_" |
21.06.2009, 20:23 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
MPI3, какой c++? это не c++
ScorpioT1000 добавил: ну и что что поток, это ничего не меняет.. |
21.06.2009, 20:23 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
MPI3
Хм...
offline
Опыт:
24,597Активность: |
J
неа, ничего нового. У тебя какой компилятор? скорее всего дело в нём. ScorpioT1000 так какие функции?) int->*char |
21.06.2009, 20:27 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
тебеже написали)
Цитата:
ScorpioT1000 добавил: #include <stdlib.h> |
|
21.06.2009, 20:29 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
MPI3, у меня VS2008, выбраси книгу из которой взял этот пример, по коду видно она очень старая
|
21.06.2009, 20:30 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
MPI3
Хм...
offline
Опыт:
24,597Активность: |
блин..вы меня сами запутали)) у меня double=))) а не int)
MPI3 добавил: Цитата:
уже))) я находил, разные способы, но блин...не во всём сразу самому можно разобраться) |
|
21.06.2009, 20:31 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
ну ftoa
ScorpioT1000 добавил: и всеравно stdlib подключать еще) |
21.06.2009, 20:33 | #13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
MPI3
Хм...
offline
Опыт:
24,597Активность: |
ScorpioT1000
опять не находит функцию, она той же библиотеки? MPI3 добавил: хм...она подкл, не находит ф-цию |
21.06.2009, 20:35 | #14
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
Цитата:
Код:
|
|
21.06.2009, 20:40 | #15
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
MPI3
Хм...
offline
Опыт:
24,597Активность: |
J
Хм...спасибо, почти то. Видимо проблема в самом значении переменной(она длинее числа пи) и получается странный результат. Очень) |
21.06.2009, 20:45 | #16
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
да, с ftoa косяк )
Цитата:
а ты уже знаешь длину числа пи? =O |
|
21.06.2009, 20:47 | #17
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
MPI3
Хм...
offline
Опыт:
24,597Активность: |
ScorpioT1000
э...да))) ну относительно)) Но для данного вычисления я брал константу из библиотеки math. И там ещё было несколько дробных(ироциональных) чисел, так что кол-во знаков после запятой больше. Как привести к 15-20 знакам...когда не знаешь точного числа знаков после запятой?) MPI3 добавил: о...всё, разобрался. Спасибо вам обоим=) |
21.06.2009, 21:22 | #18
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|