Zitat Zitat von Miau Beitrag anzeigen
Ohne es genau zu wissen ins Blaue geraten: Wenn Ruby sich tatsächlich so verhält, dann vermute ich, dass er Zahlen mit verangestellten 0en binär interpretieren will - 0001 ist dann eine binäre Eins, erfüllt also den Zweck. 0009 ist keine binäre Zahl - es folgt der Syntax-Error.
Nicht direkt. Zahlen mit vorangestellten 0en werden als Oktalzahlen interpretiert. Zahlen die mit 0x beginnen werden als Hexadezimalzahlen interpretiert, und zahlen die mit 0b beginnen werden als Binärzahlen interpretiert.
Da es im Oktalsystem aber keine 9 gibt, ändert sich die Tatsache nicht, dass 09 in Ruby keine gültige Zahl ist.