Formatowanie printf (% d vs.% u)
Jaka jest różnica między
% da
% upodczas drukowania adresów wskaźników?
Na przykład:
int a = 5;
// check the memory address
printf("memory address = %d\n", &a);// prints "memory address = -12"
printf("memory address = %u\n", &a);// prints "memory address = 65456"
Nie znaleziono powiązanych wyników
Zaproszony:
Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się
5 odpowiedzi
Anonimowy użytkownik
Potwierdzenie od:
ta strona
http://www.cplusplus.com/refer ... intf/
możesz znaleźć listę formatowania znaków specjalnych.
to liczba całkowita ze znakiem, a to liczba całkowita bez znaku. Wskaźniki (gdy są postrzegane jako liczby) są zwykle nieujemne.
Jeśli naprawdę chcesz wyświetlić wskaźnik, użyj specyfikatora formatu .
Anonimowy użytkownik
Potwierdzenie od:
%u
zwraca liczbę całkowitą bez znaku
%d
wyprowadza liczbę całkowitą ze znakiem
aby uzyskać adres użycia wskaźnika
%p
Kolejna lista formatowania znaków specjalnych:
>
Oto pełna lista formatowania znaków specjalnych. Podaję tylko zrzut ekranu z
tej strony
http://www.cplusplus.com/reference/cstdio/printf/
https://i.stack.imgur.com/VRH1V.png
Anonimowy użytkownik
Potwierdzenie od:
wyświetli coś takiego:
Anonimowy użytkownik
Potwierdzenie od:
Anonimowy użytkownik
Potwierdzenie od:
<pre class="lang-none prettyprint-override">
Jeśli przekażesz wskaźnik jako i użyjesz jako specyfikatora konwersji, nie otrzymasz żadnego komunikatu o błędzie: