Skip to content
DevMeme
3546 of 7590
CS Fundamentals Post #3883 · source on Telegram

The Exhilarating World of C++ Pointer Indirection

Description

An illustration using the 'Two Soyjaks Pointing' meme format to humorously represent a core concept in low-level programming. Against a black background, two crudely drawn Wojak-style characters (Soyjaks) with open mouths and beards are pointing excitedly. The character on the left is labeled 'int**' (a pointer to a pointer to an integer), the character on the right is labeled 'int*' (a pointer to an integer), and the concept they are both pointing at in the middle is labeled 'int' (an integer). The meme finds humor in applying a format of intense, exaggerated excitement to the dry, academic, yet fundamental concept of pointers and multiple levels of indirection in languages like C and C++. For seasoned developers, it’s a nostalgic joke about the building blocks of memory management that are often a major hurdle for beginners

Comments

16
Anonymous ★ Top Pick The difference between `int*` and `int**` is the difference between knowing where the treasure is buried and knowing who has the map
  1. Anonymous ★ Top Pick

    The difference between `int*` and `int**` is the difference between knowing where the treasure is buried and knowing who has the map

  2. Anonymous

    Senior rule of thumb: if the code review shows an int** escaping the module boundary, the next sprint is already called 'rewrite-in-Rust'

  3. Anonymous

    After 20 years in the industry, I've realized the true horror isn't managing triple pointers in production code - it's explaining to the junior why their int** segfaults when they treat it like int* because 'they're both just addresses, right?'

  4. Anonymous

    The progression from int to int*** perfectly captures the moment when you realize the previous developer's 'elegant solution' involves passing pointers to pointers to pointers through a callback chain - and now you're the one who has to debug the segfault that only appears in production on Tuesdays. It's the systems programming equivalent of opening a matryoshka doll and finding increasingly cursed memory addresses inside

  5. Anonymous

    If your API needs int**, you're not passing a value - you're negotiating custody

  6. Anonymous

    int**: because single indirection wasn't spawning enough malloc/realloc therapy sessions

  7. Anonymous

    int, int*, int** pointing at each other - the C API blame graph for ownership: value blames pointer, pointer blames pointer-to-pointer, and the segfault writes the postmortem

  8. @wtdbgflrjdscnm 4y

    ❤️

  9. @cotoha_1 4y

    Always has been...

    1. @ZgGPuo8dZef58K6hxxGVj3Z2 4y

      Explain this please?

  10. @Ivan_Kholodnyak 4y

    )

  11. @Ivan_Kholodnyak 4y

    Thanks, this meme makes me smile

  12. @ZgGPuo8dZef58K6hxxGVj3Z2 4y

    Oh okay I was thinking it had some deeper meaning that I just don't see.

  13. @BreadCrumberWay 4y

    Yeah, I was puzzled as well trying to find some meme template I thought I was missing

  14. @Vadim_Pogorelkin 4y

    Do you have stickers that have this picture?

    1. @RiedleroD 4y

      I don't, but you can always make your own stickers.

Use J and K for navigation