Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 24 lut 2026, o 04:42


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
Autor Wiadomość
PostNapisane: 16 kwi 2013, o 20:14 
Offline
Nowy

Dołączył(a): 16 kwi 2013
Posty: 8
Pomógł: 0

Witam wszystkich.
Przy funkcji sprintf pojawia mi się warning jak na obrazku poniżej. Dodatkowo raz jest a po kolejnej kompilacji już się nie pojawia. Czym jest to spowodowane??
Będę wdzięczny za pomoc i wyjaśnienia.
Pozdrawiam.



Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 kwi 2013, o 20:24 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27449
Lokalizacja: Szczecin
Pomógł: 1045

Po pierwsze to zapamiętaj sobie, że to normalne że po pierwszej kompilacji są warningi a po drugiej ich nie ma. Czasem nawet po następnej i następnej też nie ma ;) Ale gdybyś zrobił raz opcję CLEAN (czyszczenie projektu) i znowu kompilację to znowu za pierwszym razem pojawiłyby się warningi.

Po prostu zawsze po pierwszej pełnej kompilacji/opcji CLEAN kompilator krzyczy warningami. Ale jak programista robi kolejną kompilację bez żadnych zmian w kodzie (nie poprawia warningów) to kompilator uznaje, że programista mówi mu

"zamknij dziób i nie miałcz mi już z tymi warningami ja wiem co robię"

więc grzecznie kompilator zamyka dziób ;) rozumiesz .... ale gdy zrobisz CLEAN i znowu za pierwszym razem przy pełnej kompilacji pokrzyczy. To jedno.
------------------------------------------

drugie - masz komunikat który mówi ci wprost że masz konflikt typów pierwszego argumentu, którym jest przekazany bufor do funkcji sprintf, w twoim przypadku to przecież jest:

ASCII_tem

pewnie to jakaś tablica/bufor ale nie pokazałeś jak masz ją zdefiniowaną - jaki typ mają jej elementy ? czy może to nie jest tablica ?

pokaż tę definicję to będzie można powiedzieć ci coś więcej ok?

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 kwi 2013, o 22:31 
Offline
Nowy

Dołączył(a): 16 kwi 2013
Posty: 8
Pomógł: 0

Dziękuję serdecznie za zainteresowanie i odpowiedź.
Bufor miałem zadeklarowany w ten sposób:
volatile char ASCII_temp[13];

W deklaracji bufora był specyfikator volatile. Po jego usunięciu (jak się okazało nie był konieczny) warning już przestał się pojawiać.
Dziękuję i pozdrawiam :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 kwi 2013, o 23:31 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27449
Lokalizacja: Szczecin
Pomógł: 1045

no więc właśnie - i tym sposobem pewnie zapamiętasz, że generalnie bufory tego typu nawet jeśli korzysta się z nich i w przerwaniach i w programie głównym nie muszą mieć specyfikatora volatile ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO