0

我需要做这样的事情:

sizeof(int[width][height][8])

但不幸的是,在 c89(我必须使用的标准)中,这种表示法是被禁止的,有没有办法做同样的事情,但使用指针表示法?

这是我得到的错误

它在 c99 中可以正常工作,但在 c89 中不行

4

1 回答 1

0

你可以这样写:

(sizeof(int) * (width) * (height) * 8)

确保将第sizeof(int)一个强制转换为width并避免在if和has类型上潜在的整数溢出。heightsize_twidth * height * 8widthheightint

于 2020-12-04T10:43:38.580 回答