• barsoap
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    2 months ago

    Data after dst+n is unchanged.

    Sure but that means the part before that is garbage because you have a null terminated string without terminator.

    Or at least that’s how I see it. If your intention isn’t to start and end with a null-terminated string you should be using memcpy. Let us not talk about situations where CHAR_BIT != 8 that’s not POSIX anyway.

    Even better, just avoid doing string manipulation in C.

    • uis
      link
      fedilink
      arrow-up
      1
      ·
      2 months ago

      Let us not talk about situations where CHAR_BIT != 8 that’s not POSIX anyway.

      Yeah, let’s not talk about 20-bit one’s complement ints.