pointers

Dlaczego operator arrow ( - > ) w C istnieje?

Operator dot (.) jest używany do uzyskania dostępu do elementu struktury, podczas gdy operator strzałki (->) W C jest używ ... twórcy języka postanowili skomplikować sprawę dodając ten pozornie niepotrzebny operator? Co to jest duża decyzja projektowa?

Jakiego rodzaju wskaźnika użyć kiedy?

Ok, więc ostatnim razem, kiedy pisałem C++, std::auto_ptr było wszystko, co było dostępne, i boost::shared_ptr było wściekłoś ... dotyczące durnych wskaźników (raw pointers jak T*) i resztę boost Inteligentne Wskaźniki. (Coś w rodzaju to byłoby świetne).

Czym jest rozkładanie tablicy?

Czym jest rozkładanie tablicy? Czy jest jakiś związek ze wskaźnikami tablicy?

Dlaczego adres tablicy jest równy jej wartości w C?

W poniższym bitu kodu wartości wskaźnika i adresy wskaźników różnią się zgodnie z oczekiwaniami. Ale wartości tablic i adres ... &pointer_to_array = %p\n", &pointer_to_array); printf("Press ENTER to continue...\n"); getchar(); return 0; }

Dlaczego warto używać podwójnego wskaźnika? albo po co używać wskaźników do wskaźników?

Kiedy powinien być użyty Podwójny wskaźnik w C? Czy ktoś może wyjaśnić przykładem? Wiem, że Podwójny wskaźnik jest wskaźnikiem do wskaźnika. Po co mi wskaźnik do wskaźnika?

Jaka jest różnica między char * const a const char*?

Jaka jest różnica między: char * const I const char *

Wskaźnik do członka danych klasy "::*"

Natknąłem się na dziwny fragment kodu, który dobrze kompiluje: class Car { public: int speed; }; int main() { ... C++ ma ten wskaźnik do niestatycznego elementu danych klasy? Jakie jest użycie tego dziwnego wskaźnika w prawdziwym kodzie?

Dlaczego użycie "nowego" bo wycieki pamięci?

Najpierw nauczyłem się C#, a teraz zaczynam od C++. Jak rozumiem operator new W C++ nie jest podobny do tego w C#. Czy możes ... ycieku pamięci w tym przykładowym kodzie? class A { ... }; struct B { ... }; A *object1 = new A(); B object2 = *(new B());

Czy nazwa tablicy jest wskaźnikiem?

Czy nazwa tablicy jest wskaźnikiem w C? Jeśli nie, Jaka jest różnica między nazwą tablicy a zmienną wskaźnika?

Jak znaleźć ' sizeof '(wskaźnik wskazujący na tablicę)?

Po pierwsze, oto jakiś kod: int main() { int days[] = {1,2,3,4,5}; int *ptr = days; printf("%u\n", sizeof(days ... eć się, jaki rozmiar tablicy ptr wskazuje na (zamiast podawać jej rozmiar, który wynosi cztery bajty w systemie 32-bitowym)?

Wskaźniki a wartości w parametrach i wartości zwrotne

W Go istnieją różne sposoby zwracania wartości struct lub jej wycinka. Dla poszczególnych widziałem: type MyStruct struct { ... łek wskaźników do struktur, czy powinienem przekazać wskaźnik do kawałka jako argument (wzorzec używany w Go App Engine API)?

Czy są korzyści z przechodzenia przez wskaźnik nad przechodzeniem przez odniesienie w C++?

Jakie są korzyści z przechodzenia przez wskaźnik nad przechodzeniem przez odniesienie w C++? Ostatnio widziałem wiele przykł ... kład: func(SPRITE *x); Z wywołaniem func(&mySprite); Vs. func(SPRITE &x); Z wywołaniem func(mySprite);

Wskaźnik a odniesienie

Co byłoby lepszą praktyką przy nadawaniu funkcji zmiennej oryginalnej do pracy: unsigned long x = 4; void func1(unsigned l ... void func2(unsigned long* val) { *val = 5; } func2(&x); IOW: czy jest jakiś powód, aby wybrać jednego nad drugim?

Skąd free wie ile za darmo?

W programowaniu C, moĹźesz przekazaÄ ‡ dowolny rodzaj wskaznika jako argument do free, skÄ ... d zna on Rozmiar przydzielonej ... mej techniki w moich własnych funkcjach, aby uchronić mnie przed potrzebą wózka wokół dodatkowej zmiennej o długości tablicy?

Co ludzie uważają za trudne w wskaźnikach C? [zamknięte]

Z liczby zamieszczonych tutaj pytań wynika, że ludzie mają dość poważne problemy z poruszaniem się po wskaźnikach i arytmetyc ... magasz się ze wskaźnikami, lub ostatnio byłeś, ale nagle "mam to", jakie były aspekty wskaźników, które spowodowały problemy?

Czy powinienem użyć char * * argv lub char * argv []?

Właśnie uczę się C i zastanawiałem się, który z nich powinienem użyć w mojej głównej metodzie. Jest jakaś różnica? Który z nich jest bardziej powszechny?

Jak zwiększyć adres wskaźnika i wartość wskaźnika?

Załóżmy, int *p; int a = 100; p = &a; Co i jak będzie robił poniższy kod? p++; ++p; ++*p; ++(*p); ++*(p); *p++; ... 300 jest przechowywany w wskaźniku p, którego adres to 3560200. Jaka będzie wartość p & a Po wykonaniu każdego polecenia?

Przechodzenie przez odniesienie w C

Jeśli C nie obsługuje przekazywania zmiennej przez odniesienie, dlaczego to działa? #include <stdio.h> void f(int *j) ... = 20; int *p = &i; f(p); printf("i = %d\n", i); return 0; } Wyjście: $ gcc -std=c99 test.c $ a.exe i = 21

Różnice między unikalnym PST a wspólnym PST [duplikat]

Możliwe duplikaty:pimpl: shared_ptr lub unique_ptrInteligentne Wskaźniki (boost) wyjaśnione Może ktoś wyjaśnić różnice między shared_ptr i unique_ptr?

Wyrażenia wskaźnikowe: * ptr++, * ++ptr i ++ * ptr

[4]}ostatnio natknąłem się na ten problem, którego sam nie jestem w stanie zrozumieć. Co te trzy wyrażenia naprawdę oznaczaj ... ak każdy wyrażenie działa w danym fragmencie kodu. Przez większość czasu nad moją głową przelatuje tylko jeden akapit teorii.