635
void * (sh.itjust.works)
top 13 comments
sorted by: hot top controversial new old
[-] rhpp@programming.dev 98 points 5 months ago

Actually void* just points to anything, with no regard to the type of that thing. Pointing to the void is more accurately described by NULL pointer.

[-] tunetardis@lemmy.ca 38 points 5 months ago

Fair, though I guess my interpretation was that void* is kind of like a black hole in that anything can fall into it in an unsettling way that loses information about what it was?

[-] Traister101@lemmy.today 10 points 5 months ago

It erases the type of what your pointing at. All you have is a memory location, in contrast to int* which is a memory location of an int

[-] frezik@midwest.social 32 points 5 months ago

"Allow me to combine the worst feature of strong typing with the worst feature of dynamic typing".

[-] riodoro1@lemmy.world 27 points 5 months ago

Result: one of the most if not the most popular programming languages.

[-] marcos@lemmy.world 5 points 5 months ago

But we need dynamic types!

...hold my beer...

[-] neo@lemy.lol 7 points 5 months ago

So, when I want the void to point back at me, do I have to loop over void* or over NULL?
And how many iterations?

[-] programmer_belch@lemmy.dbzer0.com 7 points 5 months ago

For the void to point back at you just dereference the NULL pointer

[-] sus@programming.dev 3 points 5 months ago* (last edited 5 months ago)

as many iterations as it takes

void* x = &x;
char* ptr = (char*)&x;

while (1) {
    printf("%d\n", (unsigned int)*ptr);
    ptr--;
}
[-] mox@lemmy.sdf.org 5 points 5 months ago

In other words, void refers to the typing of the pointer, not a particular value that might be present at its target.

(But I can see how someone might find it confusing.)

[-] Olgratin_Magmatoe@lemmy.world 13 points 5 months ago* (last edited 5 months ago)

Void star labs/Zach Freedman moment

[-] xia@lemmy.sdf.org 5 points 5 months ago

There are no ints in the void, only... death...

[-] Klnsfw@lemmynsfw.com 1 points 5 months ago

For God sake, be consistent. It's either int*, int**, void* or int *, int **, void *

this post was submitted on 22 May 2024
635 points (98.5% liked)

Programmer Humor

19503 readers
325 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS