avr-gcc i linux + deklarera binära värden = error
avr-gcc i linux + deklarera binära värden = error
hej!
Kör avr-gcc på linux och det funkar riktigt bra, kruxet är bara att jag får error när jag komplerar kod där variabler är deklarerade med binära tal
t.ex int test = 0b00001111;
då får man
error: invalid suffix "b00001111" on integer constant
Nån som har fått samma fel och hittat en lösnng?
Kör avr-gcc på linux och det funkar riktigt bra, kruxet är bara att jag får error när jag komplerar kod där variabler är deklarerade med binära tal
t.ex int test = 0b00001111;
då får man
error: invalid suffix "b00001111" on integer constant
Nån som har fått samma fel och hittat en lösnng?
Javisst gör det det, du får nog mata in dina konstanter på hexadecimal bas...
EDIT: Jag måste nog stött på det och inte funderat mer på det... för när man tänker efter är det ju lite underligt(?) Beror det på nån branchning i utvecklingen mellan källkod och kompilerade versioner för windoze? Eller är det nån växel?
EDIT2: eller använder kanske win-avr den där fullösningen?
EDIT: Jag måste nog stött på det och inte funderat mer på det... för när man tänker efter är det ju lite underligt(?) Beror det på nån branchning i utvecklingen mellan källkod och kompilerade versioner för windoze? Eller är det nån växel?
EDIT2: eller använder kanske win-avr den där fullösningen?

Senast redigerad av ahlsten 29 augusti 2006, 23:25:04, redigerad totalt 2 gånger.
Jo, kanske. C är ju från tiden där man räknade oktalt, man kan alltså ange tal som decimala ("10"), hexadecimala ("0x..") och oktala ("0o...") men inte binära..... och jag håller med om att det verkar konstigt att exkludera ett sätt av 4 vanliga.... Antar att det är därför att en del kompilera fixar det lilla extra...
Naturligtvis är det som Icecap säger!
Man kan också ha viss förståelse för att det var så i tidiga varianter av C-standard, med tanke på arvet från minidatorer med oktal representation etc. Vad som är lite konstigare att förstå, är att det inte lagts till i senare ANSI-standard. Även om det inte är så himla vanligt i desktopapplikationer så är ju faktiskt inbäddade applikationer med C vardagsmat numera.

Man kan också ha viss förståelse för att det var så i tidiga varianter av C-standard, med tanke på arvet från minidatorer med oktal representation etc. Vad som är lite konstigare att förstå, är att det inte lagts till i senare ANSI-standard. Även om det inte är så himla vanligt i desktopapplikationer så är ju faktiskt inbäddade applikationer med C vardagsmat numera.