Timeline for Reverse Engineering Data Files (Binary Visualization)
Current License: CC BY-SA 4.0
7 events
| when toggle format | what | by | license | comment | |
|---|---|---|---|---|---|
| Mar 13, 2024 at 15:29 | comment | added | Madagascar |
@uli It has been here since C99. Per 6.7.6.3 7, the pointer must point to at least N elements. This means the pointer must not be null, which the compiler can use to optimize some things. Some examples: double a[static 1] is a pointer to a single object. double a[static 10] is a pointer to a collection of objects of known (10) members. double a[n] is a pointer to a collection of objects of unknown numbers. If a null pointer is still passed in, the compiler is required to raise a diagnostic message. And double *a denotes a pointer to a single object of the type of a null pointer.
|
|
| Mar 13, 2024 at 12:30 | comment | added | uli |
I had never seen the [static N] syntax and it puzzled me, too, but I find it just so expressive that I would prefer to have it. It addresses one of the core criticisms of C, which is pointers, without implying any runtime overhead -- well, at least if I understand it correctly.
|
|
| Mar 9, 2024 at 22:54 | history | edited | Rish | CC BY-SA 4.0 |
added 1916 characters in body
|
| Mar 9, 2024 at 22:27 | history | undeleted | Rish | ||
| Mar 9, 2024 at 22:27 | history | edited | Rish | CC BY-SA 4.0 |
added 1916 characters in body
|
| Mar 9, 2024 at 22:00 | history | deleted | Rish | via Vote | |
| Mar 9, 2024 at 22:00 | history | answered | Rish | CC BY-SA 4.0 |