Mupfel
Mitglied
Ich habe eben wieder einen meiner Lieblingsfehler gemacht. Den möchte ich - in verkürzter Form - mit euch teilen:
Man könnte meinen, die Ausgabe laute
Und das ist der Hintergrund, in rot13, damit man länger knobeln kann:
Fehlerhafter Code:
#include <cstdint>
#include <iostream>
#include <sstream>
#include <string>
int main(void) {
std::string s("123 234 456");
std::uint16_t v1;
std::uint8_t v2;
std::uint32_t v3;
std::stringstream ss(s);
ss >> v1 >> v2 >> v3;
std::cout << v3 << v2 << v1 << std::endl;
return 0;
}
456234123; sie lautet aber 342124 324123. (Danke an Mat für die Korrektur!)Und das ist der Hintergrund, in rot13, damit man länger knobeln kann:
Qvr Inevnoyr i2 vfg rva hvag8_g, haq qnzvg rva hafvtarq pune. Qre Fgevatfgernz vagrecergvreg fbzvg ahe qnf refgr Mrvpura qrf Erfg-Fgevatf. i3 raguäyg qnanpu ahe abpu qvr yrgmgra orvqra Mvssrea haq qre yrgmgr Mvssreaoybpx jveq tneavpug refg nhftrjregrg.
Zuletzt bearbeitet: