Obecnie rozpoczynam od programowania mikrokontrolerów przy użyciu C30
(A C
kompilatora opartego na GCC
z mikrochipa dla ich urządzeń PIC24
) i włączałem Strict ANSI warnings
z ciekawości. Po pierwsze, nie wiedziałem, że w C11 komentarze takie jak // są "błędne" i zamiast tego powinienem użyć/* bla bla * /, ale to, co naprawdę mnie zaskoczyło, jest tym ostrzeżeniem dla linii kodu.Jak używać prefiksu binarnego zgodnie z C11?
"UWAGA: korzystanie z niestandardowym przedrostek dwójkowy"
Linia kodu:
OSCCONbits.COSC = 0b000;
Szukałem online w jednym z projektów C11 (ISO/IEC 9899 : 2011) i nie można znaleźć niczego o przedrostkach binarnych w C. http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf
Jaka jest poprawna notacja binarna dla C zgodnie z C11?
przekonwertować go na liczbę szesnastkową. Jeśli chodzi o ustawienie czegoś na (binarne) '0000', dlaczego nie wystarczy użyć zwykłego dziesiętnego' 0' lub szesnastkowego '0x00'? –
Kto powiedział, że // komentarze są "błędne"? –
Myślę, że mogłem źle sformułować moje pytanie, więc tutaj są pewne poprawki. Wiem, że mogę po prostu użyć heksadecymalnego lub dziesiętnego zamiast binarnego, po prostu chciałem wiedzieć, jaki był "właściwy" sposób używania binarnych literałów. Odnośnie mnie mówiąc, że komentarze są "złe", mam to z ostrzeżenia kompilatora, nikt mi nie powiedział, ale kompilator. W każdym razie, dzięki za pomoc! Dostałem kilka świetnych odpowiedzi i chciałbym móc zaznaczyć je wszystkie jako odpowiedzi, ale mogłem to zrobić tylko jednemu ze smutków. – hak8or