Здравствуйте, LaptevVV, Вы писали:
E>>>подскажите пожалуйста как выполнить цикл
E>>>E>>>for(i=0 i<ZNACHENIE; i++)
E>>>{
E>>> ....
E>>>}
E>>>
E>>>где значение это 42 битное число??
maq>>В этом случае и i должно быть не менее чем 42 бит, если компилятор поддерживает
maq>>64х битные переменные (__int64 или long long) то просто используйте их.
maq>>Если нет то можно реализовать с использованием двух 32-х битных
LVV>А можно и адщфе использовать, если использовать в качестве индекса не нужно.
адщфе = float?
Тогда ты не прав. Флоат всего 4 байта и цикл, перебирающий 2^42 значений, на нем никак не организуешь.
Вот на double можно организовать. У него одна мантисса 52 бита.
[msdn]
Type Exponent length Mantissa length
float 8 bits 23 bits
double 11 bits 52 bits
[/msdn]
А в качестве индекса все равно поиспользовать не получится... хоть double используй, хоть __int64.