Pointers – вопросы и ответы

48
голосов
3
ответа
У меня есть функция, которая получает указатель на массив размером 4 (всегда) и должна срезать только уникальные элементы и возвращать их. Эта функция называется 100k раз в секунду, поэтому она дол...
2 года, 4 месяца назад ptp
191
голос
7
ответов
В C.1.3 С++ IS (2003. Он также в С++ 11 IS), стандарт указывает разницу между ISO C и С++; а именно для char arr[100]; sizeof(0, arr) возвращает sizeof(char*) в C, но 100 в С++. Я не могу найти док...
8 лет, 7 месяцев назад John
70
голосов
1
ответ
Похоже, что нижний бит указателей, равный 0, более или менее симпатичный переносимый (где переносимый, очевидно, не означает "стандарт", но что люди уходят с ним и могут использовать его в некоторы...
4 года назад HostileFork
58
голосов
4
ответа
Im представил следующую проблему: int i[20] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19}; int *p; с я [0], начиная с адреса 1,242 на машине Big Endian с 32-битными целым...
3 года, 10 месяцев назад Bill Tudor
59
голосов
1
ответ
В этом коде я прочитал, что ar эквивалентно &ar[0] , поэтому мы можем написать int* pointer = ar; при работе с указателями. Кажется, ar - это указатель на ar[0] . Так как &ar и ar могут быт...
1 год, 2 месяца назад Crazy_Boy53
59
голосов
2
ответа
Предположим, у меня есть два файла: file1. c- содержит глобальное определение массива int размера 10 с именем "array [10]". file2. c- содержит указатель int с именем "extern int * array", здесь я п...
7 лет, 2 месяца назад Azazle
-3
голоса
2
ответа
Я пишу эту функцию, которая копирует n символов из s2 в s1. Если длина s2 короче n, остальные n символов будут состоять из нулевых символов. main() { char sourceStr[10]; char destStr[80]; int myInt...
6 лет, 11 месяцев назад kype
-5
голосов
1
ответ
Следующий код дает мне ошибку сегментации, и я пробовал много разных вещей, но не могу понять, почему это не сработает. Я новичок в C++, поэтому я сожалею, если этот вопрос может быть немного легки...
5 лет, 6 месяцев назад ec-m
94
голоса
8
ответов
Итак, у меня есть код C: #include <stdio.h> #include <string.h> /* putting one of the "char*"s here causes a segfault */ void main() { char* path = "/temp"; char* temp; strcpy(temp, pat...
11 лет, 4 месяца назад codemonkey
-3
голоса
2
ответа
void fun(char* name); int main(){ char* name = NULL; fun(name); printf("%s",name); } void fun(char* name){ char input[SIZE]; int length; printf("Please enter a name:\n"); scanf("%s",input); length ...
11 месяцев, 4 недели назад gbox
48
голосов
1
ответ
Я работаю над назначением Data Structures, ориентированным на стеки, и мне нужна помощь. Я должен сравнить две строки, если они палиндромы, используя стек. Моей идеей этой программы является fgets(...
2 года, 11 месяцев назад TheXales
48
голосов
3
ответа
class C { public: std::vector<C*> list; int value; C(int value, C* parent) { this->value = value; if(parent) { parent->registerChild(this); } } void registerChild(C* child) { this->l...
5 лет, 9 месяцев назад Athlon1600
58
голосов
1
ответ
Я использую настраиваемый распределитель, который должен знать реальный тип объекта при удалении. * Он также должен освободить тот же точный адрес, который был получен от функции allocate. Это мой ...
6 лет, 1 месяц назад odinthenerd
49
голосов
6
ответов
Я хочу выделить память и заполнить ее указателем, который является одним из параметров функции, но я думаю, что я не получаю какую-то важную вещь, помогите мне, пожалуйста. Итак, если я это сделаю,...
8 лет, 4 месяца назад Alecs
47
голосов
7
ответов
Учти это: #include <iostream> using namespace std; class A{ protected: void some_function(int params) { //inside A: do something A related } }; class B: public A{ public: void call_some_funct...
8 лет, 1 месяц назад Orochi
48
голосов
1
ответ
8.3.4/8 N3797: [Пример: рассмотрим int x[3][5] ; Здесь x представляет собой массив целых чисел размером 3 × 5. Когда x появляется в выражении, оно преобразуется в указатель на (первый из трех) пяти...
5 лет, 4 месяца назад user4910881
47
голосов
4
ответа
Вероятно, он уже был размещен где-то, поскольку это проблема Эйлера проекта, но у меня нет проблемы с решением конкретной проблемы, хотя у меня есть проблема с кодом, который я написал, поскольку я...
4 года, 7 месяцев назад EternalEnvy
49
голосов
2
ответа
Я работаю над домашним заданием для класса при перегрузке операторов. Проблема, с которой я столкнулась, связана с символом. RetailItem &RetailItem::operator=(const RetailItem &objRetail) {...
4 года, 1 месяц назад Edgar
75
голосов
1
ответ
Мне просто интересно, является ли список С# похожим на список С++. Удаление элемента в середине большого списка в С++ выполняется быстро, потому что я знаю, что элементы просто указывают на следующ...
6 лет, 7 месяцев назад Assassinbeast
137
голосов
4
ответа
Я создал 2D-массив и попытался напечатать определенные значения, как показано ниже: int a[2][2] = { {1, 2}, {3, 4}}; printf("%d %d\n", *(a+1)[0], ((int *)a+1)[0]); Вывод: 3 2 Я понимаю, почему 3 - ...
5 лет, 6 месяцев назад Kevin Richards
48
голосов
3
ответа
Поэтому моя программа всегда возвращала ошибку сегментации, но я не мог понять, почему так пытался отлаживаться с GDB, и это показало мне следующее: (gdb) backtrace #0 0x001a98ef in _int_malloc (av...
3 года, 10 месяцев назад sharp_c-tudent
49
голосов
1
ответ
У меня есть численная задача вычисления, реализованная с преобразованием Фурье. Я использую fftw для реализации FFT, но сигнал FFTed довольно странный. Половина сигнала - от одного массива, а друга...
6 лет, 4 месяца назад user1285419
90
голосов
5
ответов
Есть ли причина, по которой это происходит: char *strcpy(char *dest, const char *src); вместо этого? char *strcpy(char *const dest, const char *src); Насколько я знаю, функция никогда не изменит ук...
3 года назад Rothwell
58
голосов
2
ответа
Я написал функцию C++, которая может быть представлена следующим образом: все, что она делает, это взять строку (это то, где она сбой) и отменить ее. #include <iostream> #include <string.h...
2 года, 5 месяцев назад wking77
94
голоса
1
ответ
Я помогаю другу получить графический ЖК-дисплей, работающий на его AVR, несколько месяцев назад все работало без проблем, с тех пор оно не тронуто. Теперь чип был выведен из ATMega32 в ATMega164P. ...
8 лет, 2 месяца назад rolls
68
голосов
6
ответов
Я изучаю теперь c и я придумываю этот пример, где я могу печатать текст с помощью указателей. #include <stdio.h> main () { char *quotes = "One good thing about music, when it hits you, you fe...
6 лет, 3 месяца назад yaylitzis
-9
голосов
2
ответа
У меня есть этот код: #include <stdio.h> #include <math.h> int *fun(); int main() { int *t; t=fun(); printf("%d\n",*t); printf("%d\n",*t); } int *fun() { int r=95; return(&r); } Выв...
4 года, 2 месяца назад Raj Malhotra
75
голосов
2
ответа
Я пытаюсь сделать программу с участием файлов assign2.cpp , Player.h , Player.cpp , Team.h , Team.cpp которая считывает данные из txt файла на информацию о игроке (например, хиты, atBat, положение,...
4 года, 11 месяцев назад Minh Vuong
48
голосов
2
ответа
Мне нужен указатель на местоположение, которое всегда одно и то же. Итак, как я могу создать указатель на.. позволяет сказать адрес памяти 0x20 и сохранить его каким-то образом, чтобы иметь возможн...
8 лет, 8 месяцев назад Bietje
-3
голоса
2
ответа
Я хочу иметь указатель на тип Integer, не создавая собственный класс , у которого есть элемент, который является целым числом. Мой желаемый эффект: Byte x = 5; // Byte is just an example and WILL N...
3 года, 4 месяца назад Hatefiend
82
голоса
7
ответов
#ifndef DELETE #define DELETE(var) delete var, var = NULL #endif using namespace std; class Teste { private: Teste *_Z; public: Teste(){ AnyNum = 5; _Z = NULL; } ~Teste(){ if (_Z != NULL) DELETE(_Z...
10 лет, 3 месяца назад Jonathan
67
голосов
0
ответов
Я делаю игру в C++ с Visual Studio 2010 и SFML, и все работает отлично, когда я создаю режим Debug. Несколько дней назад я пробовал в режиме Release и отлично работал, но теперь каждый раз, когда я...
5 лет, 8 месяцев назад Mehdow
82
голоса
2
ответа
Безопасно ли следующее преобразование? int b[10][10]; char *x; int a[]={0,1,2,3,4,5,6,7,8,9}; for(int i=0;i<10;i++) for(int j=0;j<10;j++) b[i][j]=a[i]; for(x=(char *)&b[0];x<=(char *)&...
9 лет, 11 месяцев назад Prasoon Saurav
68
голосов
1
ответ
Мне была назначена задача написать программу производителя/потребителя в C. Метод процесса Producer приведен ниже и пытается захватить гласные из строки ввода пользователя ( producerString ). У мен...
2 года, 2 месяца назад user4910881
77
голосов
5
ответов
Я должен назначить память для трехмерного массива с помощью тройного указателя. #include <stdio.h> int main() { int m=10,n=20,p=30; char ***z; z = (char***) malloc(sizeof(char**)*m*n*p); retu...
7 лет, 8 месяцев назад Rog Matthews
68
голосов
2
ответа
Возможный дубликат: Передача указателя char из функции С# в С++ У меня такой тип проблемы: У меня есть С++-функция с этой сигнатурой: int myfunction ( char* Buffer, int * rotation)
7 лет, 1 месяц назад betelgeuse
75
голосов
1
ответ
Я знаю, что если я сделаю что-то вроде этого: class Obj { public: int* nine; }; Obj Obj1; //Awesome name int eight = 8; Obj1.nine = &eight; Obj Obj2 = Obj1; //Another Awesome name then Obj1 и O...
10 лет, 2 месяца назад user4910881
58
голосов
2
ответа
Я наткнулся на старый код, где мне нужно выделить память для массива матриц. В настоящее время это делается путем создания структурной матрицы и выделения памяти путем создания структуры структур. ...
1 год, 6 месяцев назад Siddharth Chabra
48
голосов
2
ответа
Я c++ новичок, и в настоящее время я разрабатываю хэш-таблицу, чтобы привыкнуть к языку (линейное хеширование). Для этого я создал внутренний класс под названием "Bucket". class Bucket { public: Bu...
2 года, 7 месяцев назад manman
58
голосов
1
ответ
У меня возникли некоторые мыслительные проблемы со следующим кодом package main import ( "fmt" ) type Company struct { Name string Workers []worker } type worker struct { Name string Other []int } ...
3 года, 5 месяцев назад Johan
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема