Najlepsza odpowiedź
Zależy od tego, w czym go mierzysz.
Wartość sizeof(char)
jest 1
z definicji ( 6.5.3.4p4 ), ponieważ rozmiar środków rozmiary w jednostkach znaków. Nie jest to rozmiar minimalny ani maksymalny, jest to jedyny możliwy rozmiar.
Ponieważ jest to typ arytmetyczny, składa się z bitów binarnych, a ich liczba jest zdefiniowana w makrze CHAR\_BIT
, co musi być co najmniej 8
( Załącznik E / 1 ). Jest to również typ znakowy i musi zawierać wszystkie możliwe jednostki kodu UTF-8 (określone pośrednio w 6.4.5p8 i gdzie indziej), co oznacza, że potrzebuje również 8 binarne bity.
8 bitów to minimalny rozmiar, istnieją kompilatory (w szczególności ukierunkowane na różne procesory DSP) z 16-bitowymi znakami, a niektóre z 32 i innymi wartościami większymi niż 8.
Odpowiedź
Więc czym dokładnie są funkcje?
Coś, co zrobiłeś, gdy miałeś czas, abyś mógł użyć później w swoim życiu, kiedy tego potrzebujesz, bez marnowania czasu.
Weźmy przykład kalkulatora-
Powiedzmy, że chcesz dodać dwie liczby 1 i 2.
Wziąłeś kalkulator, nacisnąłeś przyciski 1 i 2 i kliknięto znak równości w kalkulatorze.
Tutaj dodawanie to function ()
1 & 2 to argumenty dla Twojej funkcji ().
równa się to powrót wyciągu kalkulatora.
Teraz wprowadziłeś dwa ints (1 & 2) , więc oczywiście jeśli dodasz dwie liczby int, jako typ wyniku otrzymasz int.
Jest to oczywiste dla ciebie i dla mnie, ale nie dla maszyn.
Dlatego przed jakąkolwiek funkcją (w tym przypadku main () ) dodajemy zwracany typ (czyli jaki typ wartości jest zwracany).
Teraz musisz pomyśleć, dlaczego potrzebujemy void w takim razie?
Widzisz, są scenariusze, w których nie chcemy niczego z powrotem z funkcji () , powiedzmy w w poprzednim przykładzie nie chcesz, aby suma 1 i 2 w zamiast tego chcesz, aby na ekranie były wyświetlane 1 i 2, to wszystko.
Więc tym razem po wprowadzeniu 1 i 2 nie naciśniesz equals () .
przycisk equals () był naszą instrukcją powrotu, więc nie naciskamy euals () oznacza, że nie chcemy niczego z naszej funkcji i jeśli nie chcemy niczego z naszej funkcji (nie ma nic, co chcielibyśmy zwrócić ), to po co określać dowolny typ zwrotu.
Dlatego nie określamy żadnego typu zwracanego (i nie wpisuj instrukcji return na końcu funkcji) lub po prostu piszemy void jako typ zwracany.
Uwaga: pisanie void i nie pisanie czegokolwiek to jedno i to samo.
Dobrym standardem kodowania jest napisanie void ( jeśli nic nie zwracasz), ponieważ pomoże ci to rozwinąć nawyk określania typu zwracanego dla każdej funkcji .
W języku takim jak JAVA, jeśli nic nie zwracasz, musisz jawnie wpisać void przed nazwą funkcji.
Miłego kodowania .