Wenn du 0 oder 1 meinst, macht dein %
Sinn, aber du meinst % 2
(oder & 1
). Natürlich ist das + 0
immer noch ziemlich sinnlos, keine Ahnung was du da anstrebst. Für ein ganzzahliges Ergebnis von 0 oder 1 tun Sie einfach:
Der Compiler wird wahrscheinlich "Stärke reduzieren" , um zu:
%Vor% Stellen Sie außerdem sicher, dass Sie in Ihrem Programm nur srand()
einmal aufrufen oder es wird nicht den erwarteten Effekt haben.
Wenn Sie entweder 0 oder 1 wollen, tun Sie einfach
%Vor%Wenn der Rand zurückkommt, erhältst du sogar eine 0, und wenn es ungerade ist, bekommst du hier eine 1.