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

Подробнее про pointers...

Обе строки printf должны печатать адрес переменной, верно? но они оба дают разное значение... Почему так, оба должны давать одинаковое значение, потому что место в памяти, выделенное для переменной a, фиксировано. #include <stdio.h> void main() { int a = 5; int *ptra = &a; printf("%d....
4 Фев 2022 в 09:15
В функции read мне нужно получить доступ к значениям целых чисел a и целых чисел b из функции main без объявления их в прототипе функции read, с помощью указателей. Указатель x должен указывать на целое число a, а указатель y должен указывать на целое число b. #include <stdio.h> void read(int zzz[....
4 Фев 2022 в 02:36
#define offsetof(s,m) ((::size_t)&reinterpret_cast<char const volatile&>((((s*)0)->m))) Я искал этот код в течение нескольких минут, и я до сих пор не понимаю, что такое изменчивая ссылка const char, это вызывает у меня головную боль. #define offsetof(s,m) ((size_t)&(((s*)0)->m)) Это довольно ясно....
4 Фев 2022 в 02:00
Я читаю книгу Head First C и в главе об указателях (и арифметике указателей) я ничего не мог понять. Мне нужно написать такие массивы, чтобы напечатать его 3-й элемент: main(){ int drinks[] = {4, 2, 3}; printf("3rd order: %i drinks\n", *(drinks + 2)); } Но при использовании указателя мне нужно напи....
3 Фев 2022 в 19:50
int array[2][3] = {{2,3,6},{4,5,8}}; printf("%d\n",*array); Что из этого выйдет и объясните пожалуйста как? С Уважением, Уинстон....
Следующий код компилируется нормально. Header.h: typedef struct Placeholder_Type* Placeholder; Impl.cpp: #include "header.h" void doSomething(Placeholder t) { (void) t; } int main() { int *a = new int(); doSomething((Placeholder)a); } Команда компиляции: clang++ impl.cpp Тип Placehold....
3 Фев 2022 в 10:50
Мой ошибочный фрагмент кода и информация об ошибке компилятора: // code snippet 1: 0 fn main() { 1 let mut x: Box<....
3 Фев 2022 в 09:27
Почему строка "test" распечатывается как аргумент? Я не передаю указатель на строку, так как я не выделил ее перед аргументом Хранится ли строковый аргумент «тест» где-то в куче памяти? void printAstring(char * string){ printf("%s",string); } printAstring("test"); //Prints out test Обычно, ес....
3 Фев 2022 в 03:47
Мне довольно трудно правильно использовать ключевое слово restrict в C. Я написал эту функцию, чтобы перевернуть строку на месте: void my_strrev(char *restrict str, const size_t len) { char *restrict strr = str + len - 1; char temp; while (str < strr) { temp = *str; *str+....
2 Фев 2022 в 10:43
Извините, если об этом уже спрашивали, но я даже не знаю, что искать, чтобы найти ответ. У меня довольно большой опыт работы с .net/c# и т. д., однако я столкнулся с чем-то, чего не понимаю, как это работает. Я работаю над сторонней библиотекой, где у меня нет доступа к источнику. Мой вопрос: как эт....
1 Фев 2022 в 20:31
Я пытаюсь решить эту проблему, но это не работает, я думаю, что оператор внутри «если» неверен, и я не знаю, могу ли я поместить указатель внутри strcmp, как это!! #include <string.h> #include <studio.h> struct PersonCar { char pname[20]; char cModel[20]; float price; }; struct PersonCar pc[4....
1 Фев 2022 в 19:32
Можно ли повторно использовать нулевой указатель? Если да, то при каких условиях? Более конкретно, может ли кто-нибудь сказать, что происходит с этим фрагментом кода? int *p = 0; p = (int*)malloc(sizeof(int)); Если это проблематично - почему? И как правильно это сделать? РЕДАКТИРОВАТЬ: я знаю, чт....
1 Фев 2022 в 13:42
Я пытаюсь получить пользовательский ввод для вставки элемента в связанный список. Это работает, если я пытаюсь добавить в 1-ю или 2-ю позицию. Несмотря на то, что в списке более 3 элементов, если я поставлю в него 3, он никогда не будет работать и ничего не возвращает, не показывая синтаксической ....
1 Фев 2022 в 11:08
Я пишу функцию, которой дается колода карт и карта, чтобы проверить, содержится ли она в указанной колоде. Имена функций и структуры были даны мне, и я не могу их изменить. Мой код выглядит так после некоторых модификаций: int deck_contains(deck_t * d, card_t c) { //for this snippet I was given the....
1 Фев 2022 в 00:08
Используя эту структуру: typedef struct node { int content; struct node* right; struct node* left; }Node; Я пытаюсь написать код, который возвращает указатель узла, если node ->content== x Я пробовал это до сих пор, но я не думаю, что это правильно: Node* find (Node* p,int x) { Node* L,*R;....
31 Янв 2022 в 18:45
Я только что обнаружил, что при изучении C я наткнулся на каламбур, и во время эксперимента я запустил этот код: char* str="abc"; void* n=(void*)str; uint32_t str_in_int=*(uint32_t*)n; printf("%u", str_in_int); Который, очевидно, выдал целое число uint32_t. Так как я думал, что это операция с указ....
31 Янв 2022 в 16:00
Следующий код компилируется как в GNU gfortran, так и в Intel ifort. Но только версия, скомпилированная с помощью gfortran, будет работать успешно. program fort_tst use iso_c_binding INTEGER, POINTER :: a(:) TYPE(C_PTR) :: ptr INTEGER, POINTER :: b(:) ....
В приведенном ниже примере кода у меня есть фрагмент кода из проекта. У меня есть self.test_json.test_id, который является экземпляром класса, назначаемого json в конструкторе, и в функции do_somthing(self) я хочу назначить новую переменную var в области действия функции быть равным переменной sel....
30 Янв 2022 в 16:31
Я пытаюсь вернуть умноженный матричный массив из функции указателя на main. Я получаю сообщение об ошибке тайм-аута: отслеживаемая команда сбросила ядро. как получить любой возврат массива из функции в основную? Вот код: /* multiplication of matrix in function and printing it in main */ #include <....
30 Янв 2022 в 16:14
У меня есть структура, которая содержит самореферентный указатель: struct Node { Node* parent; //also has some other stuff } for ( Node n : nodeList) { states = //returns function a vector of nodes for ( i : states ) { newNode.parent = &n; newNodeList.push_back(newNode); } //co....
30 Янв 2022 в 09:23
Что говорит название, struct Foo { int *arrayPointer; Foo (int * _arr) : arrayPointer(_arr) {} }; int main() { int *arr = new int[65536]; // edit to clarify, arr needs to be on heap, its massive Foo foo(arr); //do stuff delete [] arr; // is this correct, do i need a ....
30 Янв 2022 в 02:22
У меня есть задача сделать две функции: функцию max_el, которая должна вернуть указатель на самый большой элемент в массиве; и функцию min_el, которая должна вернуть указатель на наименьший элемент в массиве. У меня это есть до сих пор, и для некоторых примеров это работает, для некоторых происход....
29 Янв 2022 в 19:23
Для некоторых это может быть совершенно очевидной ошибкой, но я не могу понять, почему возникает эта ошибка сегментации. Я понимаю, что ошибки сегментации возникают при доступе к адресу, к которому моя программа не должна обращаться. Во-первых, у меня есть этот базовый класс под названием «UiObject»....
Я пытаюсь научиться использовать указатели в C и наткнулся на следующий код, но не уверен, что это значит. float xLeft [4] , *pLeft = xLeft ; Я знаю, что xLeft[4] создает массив длины 4, но я не уверен, что делает вторая часть *pLeft = xLeft? NB - исходный вопрос скопировал неправильную версию симв....
29 Янв 2022 в 14:56
У меня есть функция, которая создает уникальный указатель на динамически выделяемый объект "c". template<typename T, typename... TArgs> void addComponent(TArgs&&... MArgs) { if(!components.count(typeid(T))) { T* c = new T(std::forward<TArgs>(MArgs)...); c->entity = this; ....
29 Янв 2022 в 04:56