4 ms·
C and C++ pointers aren't any harder than pointers in assembly, at least as far as novices complaining about pointers being hard are concerned.
by account42 7mo ago
C and C++ pointers aren't any harder than pointers in assembly, at least as far as novices complaining about pointers being hard are concerned.
- t-3 7mo agoThey are though! Indirection in assembly is just something like: ldr dest, [src, offset] It's straightforward and pretty hard to mess up, and easy to read to because the format is consistent. Whereas in C all the following are valid (and it becomes even more confusing with assignment in the declaration statement, tons of footguns and weird syntax): int* a; int *a; int a[]; int a[5]; Assignment is weird too, especially because dereferencing and defining a pointer both use '*'. *a = c; a[0] = c; Then you have structs/unions and their members, and what if those are pointers? You get . and -> syntax. It's weird and complicated, much much more complicated than assembly. That's before you get to casting and types which make C much more complicated than assembly for doing low level stuff.