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



Teraz jest 25 lut 2025, o 22:36


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 
Autor Wiadomość
PostNapisane: 25 lis 2014, o 22:13 
Offline
Użytkownik

Dołączył(a): 01 sty 2013
Posty: 169
Pomógł: 0

Hej Mam pytanie na które odpowiedzi nie znalazłem w necie ani na forum, ani też w książkach
Chcę uzyskać wartość dodatnią zmiennej ujemnej.
Coś na wzór bascomowego ABS();
Gdybym zrobił coś takiego

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


to pewnie nie zadziałałoby ponieważ w działaniu dodawania po dodaniu pierwszego a "a" wyniosło by zero i dalej dodałoby zero i wyszłoby zero.
Nawet nie próbowałem bo wydaje mi się to oczywiste. Można też zakombinować z dodatkową zmienną którą na końcu się doda do zera

Ale czy znacie jakiś bardziej elegancki sposób na odwrócenie znaku zmiennej?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 lis 2014, o 22:29 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 lut 2013
Posty: 600
Pomógł: 47

Może tak:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

_________________
https://www.instagram.com/myfirstquadcopter/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 lis 2014, o 22:36 
Offline
Użytkownik

Dołączył(a): 01 sty 2013
Posty: 169
Pomógł: 0

Chodzi mi żeby dalej mieć zmienną a, jako int8_t tylko o zmienionym znaku na przeciwny zmienna "znak" nie odgrywa roli i oznaczać będzie tylko tyle, że zmienna "dodatnia" jest tak naprawdę "ujemna"

Czyli zamiast zmiennej o wartości -10 chcę uzyskać 10 i zmienna znak ma przyjąć wartość 1 dla oznaczenia tego.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 lis 2014, o 22:39 
Offline
Moderator
Avatar użytkownika

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

<stdlib.h>

abs()

tyle razy powtarzam, przeglądać dokumentację którą ma się na własnym HDD pod nosem ;)

C:\WinAVR-20100110\doc\avr-libc\avr-libc-user-manual.pdf


Autor postu otrzymał pochwałę

_________________
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: 25 lis 2014, o 22:41 
Offline
Użytkownik

Dołączył(a): 01 sty 2013
Posty: 169
Pomógł: 0

Dzięki Mirku. Znowu okazałeś się niezawodny. I znów mi wstyd.



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: 5 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

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


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