pointers

Skąd delete [] wie, że to tablica?

W porządku, myślę, że wszyscy zgadzamy się, że to, co dzieje się z poniższym kodem, jest niezdefiniowane, w zależności od teg ... eokreślone, ale faktem jest, że scenariusz' killing spree ' nie zdarza się, więc dlatego w praktycznym świecie ktoś pamięta.)

Co to jest typ danych uintptr t

Co to jest uintptr_t i do czego może być używany?

Return array in a function

Mam tablicę int arr[5] przekazywaną do funkcji fillarr(int arr[]): int fillarr(int arr[]) { for(...); return arr; } Jak mogę zwrócić tę tablicę? Jak mogę go użyć, powiedzmy, że zwróciłem wskaźnik jak mam uzyskać do niego dostęp?

Programowanie w C: malloc () wewnątrz innej funkcji

Potrzebuję pomocy przy malloc() wewnątrz innej funkcji. Przekazuję wskaźnik i Rozmiar do funkcji z mojego main() i chciał ... urn status; } WYJŚCIE PROGRAMU: Point1: Memory allocated ptr: 262144 bytes Point2: Memory allocated input_image: 0 bytes

Co zwraca sizeof(&array)?

Po zadaniu pytania: dlaczego adres tablicy jest równy jej wartości w C? #include <stdio.h> #define N 10 char str2[ ... r str2, ale z innego typu (char (*)[N] = = wskaźnik do tablicy). Ale jak &str2 zachowuje się, gdy jest argumentem sizeof?

Dlaczego ten kod segfault na architekturze 64-bitowej, ale działa dobrze na 32-bitowej?

Natknąłem się na następującą zagadkę C: P: Dlaczego następujący program segfault na IA-64, ale działa dobrze na IA-32? i ... może wynosić 32 bity, a wskaźnik 64 bity). Nie jestem jednak pewien jak to się odnosi do powyższego programu. Jakieś pomysły?

Jaka jest różnica między char a []=?sznurek?; A char * p =?sznurek?;?

Jak napisano w nagłówku, Jaka jest różnica między char a[] = ?string?; and char *p = ?string?; To pytanie zadano mi w ... iadczenia. char a[] = ?string? Tutaj co to jest ? operator? Czy jest to część łańcucha, czy ma jakieś konkretne znaczenie?

Dlaczego wskaźniki nie są domyślnie inicjowane znakiem NULL?

Czy ktoś może wyjaśnić, dlaczego wskaźniki nie są inicjowane na NULL? Przykład: void test(){ char *buf; if (!bu ... ć, dlaczego w jakim przypadku potrzebujemy zmiennej z włączonym trashem, specjalnie wskaźników adresujących śmieci w pamięci?

Dlaczego adres zero jest używany do wskaźnika null?

W C (lub w C++), wskaźniki są specjalne, jeśli mają wartość zero: radzę ustawić Wskaźniki na zero po zwolnieniu ich pamięci, ... nie do zamieszczenia kolejnego pytania o przepełnienie stosu, czy mógłbym kiedykolwiek chcieć uzyskać dostęp do adresu zero?.

Czy dobrą praktyką jest NULL wskaźnik po usunięciu go?

Zacznę od tego, Użyj inteligentnych wskaźników, a nigdy nie będziesz musiał się o to martwić. Jakie są problemy z poniższym ... Jest wiele okoliczności, w których to by nie pomogło. Ale z doświadczenia wiem, że nie zaszkodzi. Niech ktoś mnie oświeci.

Dlaczego biblioteki i frameworki C++ nigdy nie używają inteligentnych wskaźników?

Czytałem w kilku artykułach, że surowe wskaźniki prawie nigdy nie powinny być używane. Zamiast tego powinny być zawsze zawini ... o? Po prostu zastanawiam się, dlaczego inteligentne wskaźniki są zalecane, gdy wiele dużych projektów wydaje się ich unikać.

Wskaźniki funkcji w Javie

To może być coś pospolitego i trywialnego, ale wydaje mi się, że mam problem ze znalezieniem konkretnej odpowiedzi. W C# istn ... od uwagę, że wskaźniki są nieco nieobecne, jaki jest w tym najlepszy sposób? I żeby było jasne, mówimy tu o pierwszej klasie.

Dlaczego nie używać wskaźników do wszystkiego w C++?

Załóżmy, że definiuję jakąś klasę: class Pixel { public: Pixel(){ x=0; y=0;}; int x; int y; } Nastę ... musiał usunąć go później. Czy istnieje jakaś zasadnicza różnica między tymi dwoma? Dlaczego mam preferować jedno nad drugim?

Kropka (".") operator i strzałka ( "- > " ) użycie operatora w C VS. Objective-C

Próbuję ogarnąć niektóre różnice w użyciu i składni w C VS. Objective - C. w szczególności chcę wiedzieć, jak (i dlaczego) za ... rator. Ponieważ frac jest wskaźnikiem w obu programach, dlaczego te wyrażenia są różne? Czy ktoś może mi pomóc to wyjaśnić?

Objaśnienie wskaźnika do wskaźnika

Śledziłem ten tutorial o tym, jak działa wskaźnik do wskaźnika. Pozwolę sobie zacytować odpowiedni fragment: int i ... ip1) wskazuje teraz na j: Moje pytanie brzmi: dlaczego na drugim zdjęciu ipp nadal wskazuje na ip1, ale nie na ip2?

Jak uzyskać dostęp do zawartości wektora ze wskaźnika do wektora w C++?

Mam wskaźnik do wektora. Jak mogę odczytać zawartość wektora przez wskaźnik?

Jaki jest powód użycia podwójnego wskaźnika podczas dodawania węzła do listy połączonej?

Dwa poniższe przykłady kodu dodają węzeł na górze połączonej listy. Ale podczas gdy pierwszy przykład kodu używa podwójnego w ... wskaźnikach? Czy Jest jakiś przypadek, w którym pojedynczy wskaźnik nie działa, więc musimy przejść do podwójnego wskaźnika?

Dlaczego gwiazdka jest przed nazwą zmiennej, a nie po typie?

Dlaczego większość programistów C nazywa zmienne TAK: int *myVariable; Zamiast TAK: int* myVariable; Oba są ważne. Wydaje mi się, że gwiazdka jest częścią typu, a nie częścią nazwy zmiennej. Czy ktoś może wyjaśnić tę logikę?

Poprawne określenie formatu wydruku wskaźnika (adresu)?

Jakiego formatu należy użyć do wypisania adresu zmiennej? Jestem zdezorientowany między poniższymi partiami. %u-unsigned integer % x-wartość szesnastkowa %P-void pointer Jaki byłby optymalny format wydruku adresu?