C ++ uint8_t数组长度

时间:2014-03-19 17:38:45

标签: c++ arrays

我试图获得数组的大小,但我得到了有趣的结果:

sizeof(new uint8_t [1])给了我4而sizeof(uint8_t)给了我1。

如何获得uint8_t数组的大小?

1 个答案:

答案 0 :(得分:3)

new uint8_t[1]是指针,而不是数组。

  

如何获得uint8_t数组的大小?

对于N元素的数组,以字节为单位的大小为

sizeof(uint8_t[N]);

N * sizeof(uint8_t);

但是,如果存在uint8_t,则它将是一个字节;所以在这种情况下,数组大小只是N