2012-04-04 6 views
0

Привет им-кодирование в C++ и мне нужна помощь с преобразования двойной к междунар. , что нужно, чтобы получить первое число из двойного, т. Е. (3.5945) «3». и поместите это число в int.Получение Первая цифра в два раза и хранить его в междунар C++

Я использую static_cast сейчас и его возвращение выход 0.

double X = 3.1234; 
double Y = 4.3455; 

int myIntX = static_cast <int>(X); 
int myIntY = static_cast <int>(Y); 

cout << myIntX << endl; 
cout << myIntY << endl; 

....

+4

Пожалуйста, приведите пример, воспроизводящий вашу проблему. Этого нет: http://ideone.com/zOlRz –

+0

Код, который вы вставили, не имеет вашей ошибки. Ошибка должна быть в коде, который вы * не * вставляете. Пожалуйста, создайте ** короткую **, ** полную ** примерную программу, которая демонстрирует проблему. См http://sscce.org –

+0

мой двойной номер на самом деле это .... не уверен, что это означает 3.89082e-316 моя программа довольно большая и двойная и Int переменные находятся в пределах этого класса. –

ответ

0

Попробуйте это:

double x=3.1234; 
int myintx=(int)x; 

while(myintx%10!=0) 
myintx/=10; 

cout<<myintx; 

Это даст вам первую цифру вашего двойника как int.