This would be incredibly hazardous to pass around as a bare pointer with no context, though. I’d expect to see this in a struct that, at minimum, also includes fields for the size of each dimension.
In the C programming language. Or do you mean which C project specifically? Because as Technus surmises in their response, it’s usually a better idea to set up aliases (typedefs or heck, even #defines) so that you’re offloading some of the mental strain keeping track of the layers, and that’s likely to be what happens in production code.
Real talk: is there any practical use-case for
T***of any pointee type?Dynamically allocated multidimensional arrays.
Ah right, so that would be a 3D array.
T*is a single row ofTT**is a list of rowsT***is a list of “layers” in the third dimensionThis would be incredibly hazardous to pass around as a bare pointer with no context, though. I’d expect to see this in a
structthat, at minimum, also includes fields for the size of each dimension.This
SpartaC. We live for danger.Tesseract Array
Where?
In the C programming language. Or do you mean which C project specifically? Because as Technus surmises in their response, it’s usually a better idea to set up aliases (
typedefs or heck, even#defines) so that you’re offloading some of the mental strain keeping track of the layers, and that’s likely to be what happens in production code.But the underlying data type is still
T***.deleted by creator