Вопросы с тегом «pointers»

Тип данных, который «указывает» на другое значение, хранящееся в памяти. Переменная-указатель содержит адрес памяти некоторой другой сущности (переменная или функция или другая сущность). Этот тег следует использовать для вопросов, связанных с использованием указателей, а не ссылок. Наиболее распространенными языками программирования, использующими указатели, являются C, C ++, Go и языки ассемблера. Используйте определенный языковой тег. Другими полезными тегами являются метод, функция, структура и т. Д., Описывающие использование указателя.


16
Когда использовать ссылки против указателей
Я понимаю синтаксис и общую семантику указателей по сравнению со ссылками, но как мне решить, когда более или менее целесообразно использовать ссылки или указатели в API? Естественно, в некоторых ситуациях требуется то или другое ( operator++нужен ссылочный аргумент), но в целом я считаю, что предпочитаю использовать указатели (и указатели const), …
381 c++  pointers  reference 

11
Удаление объектов в JavaScript
Я немного запутался с deleteоператором JavaScript . Возьмите следующий кусок кода: var obj = { helloText: "Hello World!" }; var foo = obj; delete obj; После того, как этот кусок кода был выполнен, objесть null, но fooвсе еще ссылается на объект в точности как obj. Я предполагаю, что этот объект …

17
Зачем использовать указатели? [закрыто]
В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, вновь открыть, обратитесь за …
357 c++  c  pointers 

4
Указатели против значений в параметрах и возвращаемых значениях
В Go есть различные способы вернуть structзначение или его часть. Для отдельных я видел: type MyStruct struct { Val int } func myfunc() MyStruct { return MyStruct{Val: 1} } func myfunc() *MyStruct { return &MyStruct{} } func myfunc(s *MyStruct) { s.Val = 1 } Я понимаю разницу между ними. Первый …
330 pointers  go 

15
Передача 2D-массива в функцию C ++
У меня есть функция, которую я хочу взять в качестве параметра двумерный массив переменного размера. Пока у меня есть это: void myFunction(double** myArray){ myArray[x][y] = 5; etc... } И я объявил массив в другом месте в моем коде: double anArray[10][10]; Тем не менее, вызов myFunction(anArray)дает мне ошибку. Я не хочу …

13
Как найти «sizeof» (указатель на массив)?
Во-первых, вот код: int main() { int days[] = {1,2,3,4,5}; int *ptr = days; printf("%u\n", sizeof(days)); printf("%u\n", sizeof(ptr)); return 0; } Есть ли способ узнать размер массива, на который ptrуказывает (вместо того, чтобы просто указать его размер, который составляет четыре байта в 32-битной системе)?
309 c  arrays  pointers  sizeof 

11
В чем разница между NULL, '\ 0' и 0?
В C, как представляется, различия между различными значениями нуля - NULL, NULи 0. Я знаю, что символ ASCII '0'оценивается как 48или 0x30. NULLУказатель обычно определяется как: #define NULL 0 Или #define NULL (void *)0 Кроме того, есть NULперсонаж, '\0'который, кажется, оценивает 0также. Есть ли случаи, когда эти три значения не …
309 c  pointers  null 


9
Указатели на С: когда использовать амперсанд и звездочку?
Я только начинаю с указателей, и я немного запутался. Я знаю, что &означает адрес переменной и который *может быть использован перед переменной указателя, чтобы получить значение объекта, на который указывает указатель. Но все работает иначе, когда вы работаете с массивами, строками или когда вы вызываете функции с копией указателя на …
298 c  pointers 


11
Когда я должен использовать новое ключевое слово в C ++?
Я использую C ++ в течение короткого времени, и меня интересует новое ключевое слово. Просто я должен использовать это или нет? 1) С новым ключевым словом ... MyClass* myClass = new MyClass(); myClass->MyField = "Hello world!"; 2) Без нового ключевого слова ... MyClass myClass; myClass.MyField = "Hello world!"; С точки …

17
Зачем использовать двойное косвенное обращение? или зачем использовать указатели на указатели?
Когда следует использовать двойную косвенность в C? Кто-нибудь может объяснить на примере? Что я знаю, так это то, что двойное косвенное обращение - это указатель на указатель. Зачем мне нужен указатель на указатель?
272 c  pointers 

3
Почему оператор стрелки (->) в C существует?
Оператор dot ( .) используется для доступа к члену структуры, а оператор стрелки ( ->) в C используется для доступа к члену структуры, на которую ссылается рассматриваемый указатель. Сам указатель не имеет каких-либо членов, к которым можно получить доступ с помощью оператора точки (на самом деле это всего лишь число, …
264 c  pointers  dereference 

12
Использование оператора стрелки (->) в C
Я читаю книгу под названием «Обучи себя C за 21 день» (я уже выучил Java и C #, поэтому я двигаюсь гораздо быстрее). Я читал главу об указателях, и оператор-> (стрелка) появился без объяснения причин. Я думаю, что он используется для вызова членов и функций (например, эквивалент оператора (точка), но …
257 c  pointers  syntax 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.