Вопросы по теме 'void-pointers'
Эквивалентен window.setTimeout () для C ++
В javascript есть сладкая функция window.setTimeout( func, 1000 ) ; , которая асинхронно вызывает func через 1000 мс.
Я хочу сделать что-то подобное в C ++ ( без многопоточности ), поэтому я собрал образец цикла, например:
#include...
14503 просмотров
schedule
10.03.2022
Расслабьтесь с преобразованием void * в C ++
В языке C приведение указателей к void * и от него не является ошибкой.
Основным препятствием при переносе на C ++ является необходимость приводить указатели при возврате из функций, имеющих дело с универсальными указателями, такими как malloc ,...
2155 просмотров
schedule
30.08.2023
Каким должен быть правильный способ присвоить значение непустому указателю void* в C?
У меня есть следующий код:
void funcA(void* pArg)
{
STRUCTA abc;
.
. // Some processing here
.
if (pArg)
(STRUCTA *)pArg = abc;
}
проблема в том, что этот код выдает следующее предупреждение: предупреждение: цель...
398 просмотров
schedule
01.02.2022
Как добавить в AudioBufferList с помощью AVAssetReader?
Я работаю над чтением аудиоактива с помощью AVAssetReader, чтобы впоследствии воспроизвести аудио с помощью AUGraph с обратным вызовом AudioUnit. У меня работает обратный вызов AUGraph и AudioUnit, но он читает файлы с диска, и если файл слишком...
5705 просмотров
schedule
07.08.2022
Потоки С++. Аргументы для pthread_create
Есть несколько вещей, которые я не понимаю в функции pthread_create .
вот заголовок
int pthread_create(pthread_t *restrict thread,
const pthread_attr_t *restrict attr,
void *(*start_routine)(void*),...
576 просмотров
schedule
12.08.2022
указатель void на динамически выделяемый класс
Я пытаюсь передать void* функции, а затем внутри этой функции сделать так, чтобы указатель указывал на динамически созданный объект. Это то, что у меня есть до сих пор, но, похоже, это не работает:
основной:
int main()
{
void* objPtr;...
6450 просмотров
schedule
09.02.2023
Приведение к void* и обратно к Original_Data_Type*
Я видел и использовал это много раз на С++, особенно в различных реализациях потоков. Что мне интересно, есть ли какие-либо подводные камни/проблемы при этом? Есть ли способ, которым мы могли бы столкнуться с ошибкой или неопределенным условием,...
4550 просмотров
schedule
25.02.2023
в чем разница между переменной (void *) и переменной (void *&) в С++ при приведении типов
в Как напечатать адрес функции-члена в C++ он использует (void *&) для ввода переменной, я пытался используйте (void *), но с этим что-то не так. я спрашиваю, в чем разница между переменной (void *) и переменной (void *&) в C++ при приведении...
2728 просмотров
schedule
09.05.2024
Общая пирамидальная сортировка: не сортировка + ошибка сегментации
Мне нужно создать «общую» пирамидальную сортировку в C.
У меня есть основной файл, который включает функцию сравнения. По сути, базовый адрес массива, количество элементов, размер каждого элемента и функция сравнения передаются в функции...
427 просмотров
schedule
02.12.2022
Для чего используется (void*) литье?
Я пытался найти это в Stack Overflow, но я думаю, что из-за синтаксиса и незнания точно, что искать, я немного растерялся.
Я видел, как (void*) использовался для приведения типов, обычно для вызовов функций. Для чего это используется?
12609 просмотров
schedule
09.02.2023
Почему я получаю ошибку SIGSEGV при использовании функции класса из указателя?
Я новичок в С++ и столкнулся с первой проблемой. У меня есть класс GameObject, в котором мне нужно каким-то образом хранить множество компонентов. Каждый компонент представляет собой отдельный класс, поэтому я не могу просто использовать вектор. Я...
550 просмотров
schedule
22.02.2023
Экземпляр класса C из указателя Void с использованием Ctypes
У меня есть C DLL, которая предоставляет несколько методов, которые возвращают void pointers в класс следующим образом:
void *GetLicense() {
static AppLicenseImpl ipds_;
return (void *) &ipds_;
}
В С++ после загрузки DLL я бы...
7077 просмотров
schedule
02.09.2023
Void * в качестве возвращаемого типа дает значение int и предупреждение: C
Я реализую свой собственный malloc и столкнулся с небольшой проблемой с пустотой *
Когда я печатаю возвращаемые адреса в mem_alloc:
printf("Addr p = %p\n", (void *)(p+ 1));
это дает мне что-то вроде этого:
Addr p =...
137 просмотров
schedule
10.05.2022
Как я могу объединить два массива, объявленных как недействительные указатели?
В настоящее время у меня есть программа, которую я пишу, где я реализую Mergesort массива. Массив состоит из неизвестных переменных - это пустой указатель, поэтому я на самом деле не знаю, какие объекты я сортирую (для фактического сравнения...
387 просмотров
schedule
01.11.2022
обратный вызов с аргументом указателя void выдает предупреждение
У меня есть следующий код:
/* callback taking a pointer to a "generic" msg as argument */
typedef void (*Callback_t)(void *msg);
/* initialize callback pointer */
Callback_t const Callback[] =
{
ProcessMsgAction0, /**< 0: MSGID_ACTION_0 */...
919 просмотров
schedule
31.03.2022
Получение void* не является ошибкой типа указателя на объект, но код отлично выполняется при использовании XCode.
При выполнении следующего кода я получаю вышеупомянутую ошибку при выполнении изменения функции. Я нигде не использовал разыменование и не использовал void*. Сначала я подумал, что это из-за (двойного *) malloc(..), но даже при использовании...
132 просмотров
schedule
26.12.2022
Приведение структуры карты к пустому указателю и разыменованию
Я пытался привести структуру карты к пустому указателю и наоборот.
void addToMap(void *data){
// add some elements to the map
}
map<string, vector<myStruct> > myMap;
addToMap(&myMap);
Я пытаюсь отправить myMap в функцию...
1287 просмотров
schedule
08.08.2022
проблемы с печатью указателей на аннулирование структуры
#include <stdio.h>
typedef struct elem{
void * d;
}Elem;
main(){
Elem *p;
Elem e;
double pi = 3.14;
e.d = π
p->d = π
printf("%f\n",p->d);
printf("%f\n",e.d);
}
main.c: 25:...
50 просмотров
schedule
09.05.2024
Как я могу привести const void* к элементу структуры?
У меня есть функция сравнения для использования в qsort() следующим образом:
int compar(const void *p, const void *q){
interval a,b;
*p = (interval)a
*q = (interval)b;
if(a.extrem[1] < b.extrem[0])
return -1;...
2638 просмотров
schedule
03.07.2022
Возврат структуры *, хранящейся в очереди fifo как void * (возврат несколькими функциями)
Привет, у меня есть небольшая проблема с void *, используемым для того, чтобы сделать код более общим. Я написал очередь fifo (используя связанный список внизу), в которой хранятся любые данные, которые можно преобразовать в void * (т.е. struct * as...
268 просмотров
schedule
15.02.2023