Wpis z mikrobloga

http://www.wykop.pl/wpis/5065254/programowanie-avr-atmel-aduino-zobaczcie-na-wartos/

Wyszło szydło z woka. Już drugi raz nadziałem się na operator >> w #cpp, który to omija pewne znaki.

Da się to jakoś elegancko rozwiązać czy trzeba wczytać cały plik i skopiować interesującą mnie zawartość do właściwego bufora? getline nie da się użyć bo to plik .elf, typowo binarny.

#programowanie #naukaprogramowania #programator
  • 8
@sylwke3100:

Extracts n characters from the stream and stores them in the array pointed by by s.


Mogę :-)

Narzędzia cpp są zbyt mocno wyspecjalizowane a do tego jest ich dużo. Czemu >> nie może wczytywać wszystkich znaków ze strumienia? Tego można się po nim spodziewać.
@Rincewind: To nie jest takie oczywiste. Btw - read oczekuje bufora typu char, ja oczekuje bufora typu unsigned char i jest konflikt.

unsigned char bufor[12];

plik.read(bufor, sizeof(bufor));

wywala błąd. Co robić? Potrzebuje właśnie typu bez znaku.
@Rincewind: Ten sam co w drugą stronę. Dobrałem taki typ bo takich danych się spodziewam. Gdyby nie to mógłbym używać tylko typu int. Drażnią mnie takie rzeczy, sorry. No nic, muszę rzutować.