002
22.11.2008, 23:03 Uhr
Hans
Library Walker (Operator)
|
Hi,
Zitat von 0xdeadbeef: |
Du verlässt dich da auf undefiniertes Verhalten, dementsprechend gibt es keine standardkonforme Antwort.
|
das hab ich schon befürchtet, nachdem ich feststellen musste, das der OpenWatcom Compiler eine gewisse matherr-funktion nicht kennt, die es bei Borland gibt...
Zitat von 0xdeadbeef: |
In der Praxis aber,
C++: |
int main() { unsigned a, b;
a = UINT_MAX; b = a + 1;
if(b < a) { // Überlauf } }
|
|
okay, das ist 'ne Möglichkeit.
In Assembler würde man ja das Carry-Flag abfragen. Aber darauf hat man von C aus ja keinen Zugriff, sofern man portabel bleiben will, bzw. keine asm-Blöcke nutzen will/kann/darf. Oder vielleicht doch, nur das ich den Trick noch nicht kenne???
Hans -- Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung. Dieser Post wurde am 22.11.2008 um 23:05 Uhr von Hans editiert. |