используйте pow
функция (она берет float
с / double
с хотя).
man pow
:
#include <math.h>
double pow(double x, double y);
float powf(float x, float y);
long double powl(long double x, long double y);
РЕДАКТИРОВАНИЕ: BTW, для особого случая положительных целочисленных полномочий 2
, можно использовать разрядное смещение: (1 << x)
будет равняться 2
питанию x
. Существуют некоторые потенциальные глюки с этим, но обычно это было бы корректно.
Я пробовал использовать ваш пример json / class, и следующее работает нормально:
List<Item> items = ser.Deserialize<List<Item>>(json);
Фактический код отличается?
(где json
- строка - смело заменяйте на ReadToEnd
и т. д. или используйте WebClient.DownloadString
, что проще)