void-pointers

    5热度

    2回答

    我收到以下警告: incompatible pointer types 'void**' and 'int* [2]'。 当我尝试编译下面的代码: #include <stdlib.h> void func1(void *arr[]) { } int main() { int *arr[2]; for (int i = 0; i < 5; i++) { ar

    0热度

    3回答

    好的,我正在c中创建一个向量数据结构(或动态列表)。 这里是我的节点结构: struct vector_node{ void *value; }; ,这里是我的矢量结构: struct vector{ int size; int capacity; vector_node *start; vector_node *end; vect

    0热度

    1回答

    我处理,我不能直接使用dynamic_cast因为对象是void*一个特例。使用它第一static_cast然后dynamic_cast(在static_cast的结果)是不好的做法?这是错的吗? 这里就是我谈论的例子: MyClass* CastVoidPtr(void* pVoidPtr) { // casting it to MyClass so we could use dyn

    0热度

    1回答

    当我试图利用inode的i_private和存储在它的名字和块数的结构: struct osffs_inode_private_info* info; inode->i_private = kzalloc(sizeof(struct osffs_inode_private_info), GFP_KERNEL); inode->i_private = info; strncpy(inode->

    0热度

    1回答

    惩戒使用库捕获一个void *参数:GMock 我试着去捕捉void*参数作为模拟对象的函数调用的一部分传递。林能够捕捉到国际价值通过SaveArg<N>过去了,但是当我尝试使用它来捕捉void*参数,它抛出编译错误 错误:gmock/include/gmock/gmock-more-actions.h:155: error: ‘const void*’ is not a pointer-to-o

    1热度

    1回答

    我在构建一个用图形做各种事情的程序时遇到了这个问题。 我使用代码块在C中编写代码,如果我正常运行它(通过“构建和运行”)程序“工作”(它仍然没有完成),但如果我尝试通过调试器运行代码,它会停止与Segmentation fault。这很奇怪。 下面是我的一些代码提取为了解决这个问题,遗憾的混乱: 的main.c FILE *file; char *input = "input.txt"; fi

    0热度

    2回答

    这不是'如何将混合数据类型(int,float,char等)存储在数组中?'问题请仔细阅读! 假设我有以下的空指针,这是我不知道它的类型,直到运行时: void* data; 现在我知道我能做到以下几点,当我知道的data(例如int)类型:使用 int typed_data = *(int*)data; 一个switch case声明我可以检查一个变量来确定投来执行: switch(ty

    0热度

    4回答

    我有一个任务,我必须使用节点的链接列表与void *作为数据。我将用一个对象填充节点。我想知道一些访问对象成员后,它是否在链接列表中的方式,而不是将其转换为类。可能吗?此外,这是我的代码块,以防万一它有助于澄清我的问题。 struct Node { void* data_; Node* next_; Node() { data_ = 0;

    0热度

    2回答

    我试图建立一个程序,可以工作与邻接列表或矩阵图,为了做到这一点,老师教我们宣布毗邻为无效*,以便将其作为列表或矩阵进行投射。 用下面的代码我得到这个输出: 正如你可以看到有很奇怪的事情B中节点挂出。 如果我尝试用代码块调试调试器会在if (L->target != target) {.. 我认为有与initGraphList动态分配的问题appendNodeList一个Segmentation F

    -2热度

    1回答

    ,什么是 void*(*void)(void*) 和 void*(*voi)(void*) 以及何时使用它的区别?