Запитання з тегом «pointers»

Тип даних, що "вказує" на інше значення, збережене в пам'яті. Змінна вказівника містить адресу пам'яті якоїсь іншої сутності (змінної чи функції чи іншої сутності). Цей тег слід використовувати для запитань щодо використання покажчиків, а не посилань. Найпоширенішими мовами програмування, що використовують покажчики, є мови C, C ++, Go та збірки. Використовуйте певний мовний тег. Інші корисні теги - метод, функція, структура тощо, що описують використання покажчика.

12
Вказівник проти посилання
Що було б кращою практикою при наданні функції оригінальної змінної для роботи: unsigned long x = 4; void func1(unsigned long& val) { val = 5; } func1(x); або: void func2(unsigned long* val) { *val = 5; } func2(&x); IOW: Чи є підстави обрати один одного?


7
Як передавати об’єкти функціям в C ++?
Я новачок у програмуванні на C ++, але маю досвід роботи в Java. Мені потрібні вказівки щодо передачі об'єктів функціям на C ++. Чи потрібно мені передавати вказівники, посилання чи не-вказівні та неопосилання? Пам’ятаю, у Java таких питань немає, оскільки ми передаємо лише змінну, яка містить посилання на об’єкти. Було …

7
size_t проти uintptr_t
Стандарт C гарантує, що size_tце тип, який може містити будь-який індекс масиву. Це означає, що, логічно, size_tмає бути можливість утримувати будь-який тип вказівника. Я читав на деяких сайтах, які з’ясував у Google, що це законно та / або завжди має працювати: void *v = malloc(10); size_t s = (size_t) v; …
246 c  pointers  size-t 

14
Вказівник на даних даних класу ":: *"
Я натрапив на цей дивний фрагмент коду, який чудово компілює: class Car { public: int speed; }; int main() { int Car::*pSpeed = &Car::speed; return 0; } Чому C ++ має цей покажчик на нестатичного члена даних класу? Яке використання цього дивного вказівника у реальному коді?
243 c++  class  pointers  c++-faq 

4
Який тип покажчика я використовую, коли?
Гаразд, тож востаннє, коли я писав C ++ на життя, std::auto_ptrбув у всіх наявних std ліб, і він boost::shared_ptrбув весь гнів. Я ніколи насправді не роздивлявся, якщо передбачено збільшення інших типів розумних вказівників. Я розумію, що C ++ 11 надає деякі типи прискорених типів, але не всі. Так у когось …


7
Чи є переваги проходження вказівника над проходженням посиланням на C ++?
Які переваги проходження за вказівником над проходженням за посиланням в C ++? Останнім часом я бачив ряд прикладів, які вибирали аргументи функції передачі вказівниками замість передачі посилання. Чи є користь від цього? Приклад: func(SPRITE *x); із закликом func(&mySprite); vs. func(SPRITE &x); із закликом func(mySprite);

8
Яка різниця між масивом char та char pointer у C?
Я намагаюся зрозуміти покажчики на C, але в даний час я плутаю наступне: char *p = "hello" Це покажчик знаків, що вказує на масив символів, починаючи з h . char p[] = "hello" Це масив, який зберігає привіт . Яка різниця, коли я передаю обидві ці змінні у цю функцію? …
216 c  arrays  pointers 

17
Повернути масив у функції
У мене є масив, int arr[5]який передається функції fillarr(int arr[]): int fillarr(int arr[]) { for(...); return arr; } Як я можу повернути цей масив? Як я буду користуватися ним, скажімо, що я повернув покажчик, як я збираюся отримати доступ до нього?

25
Що саме є покажчиком C, якщо не адресою пам'яті?
У поважному джерелі про C після обговорення &оператора наводиться така інформація : ... Трохи прикро, що термінологія [адреса] залишається, тому що вона бентежить тих, хто не знає, про що йдеться, і вводить в оману тих, хто це робить: думка про вказівники, як ніби вони адреси, зазвичай призводить до горя .. …

17
Проходження посиланням на С
Якщо C не підтримує передачу змінної за посиланням, чому це працює? #include <stdio.h> void f(int *j) { (*j)++; } int main() { int i = 20; int *p = &i; f(p); printf("i = %d\n", i); return 0; } Вихід: $ gcc -std=c99 test.c $ a.exe i = 21


4
Чи слід використовувати static_cast або reinterpret_cast під час передавання порожнечі * до будь-якого
Як static_cast, так і reinterpret_cast, здається, добре спрацьовують для перенесення недійсних * до іншого типу вказівника. Чи є вагомі причини надати перевагу одне над іншим?

3
X не реалізує Y (… метод має приймач покажчика) [закрито]
Закрито . Це питання потребує деталей або ясності . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Додайте деталі та уточніть проблему, відредагувавши цю публікацію . Закрито 3 місяці тому . Удосконаліть це питання У цій справі вже є декілька питань і запитань " X не реалізує Y (... метод …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.