void-pointers

    3熱度

    2回答

    用C所以學習指針和我認爲,作爲一個練習,我可以做一些普通的數組,我得到了使用void當**它的工作是這樣的: struct array{ void **data; size_t size, capacity; }; 這樣插入元素: void array_append(array *a, void *element){ if(a->size == a->capac

    1熱度

    2回答

    還有一個問題討論如下:When printf is an address of a variable, why use void*?,但它只是回答爲什麼你不應該將指針作爲整數來打印。 另一個問題,討論你應該總是投給無效的指針*當將它們傳遞給可變參數函數時:Argument conversion: (normal) pointer to void pointer, cast needed?。它說,如

    3熱度

    4回答

    我想創建一個基於動態數組的動態集合抽象數據類型。不過,我得到一個編譯器警告和錯誤,當我嘗試添加的數據陣列,它們是: 警告:提領「無效*」指針[默認啓用] 錯誤:無效使用無效的表達 我的代碼如下,我已加評論 struct SET { //general dynamic array void *data; int elements; //number of elements int allo

    0熱度

    1回答

    所以即時嘗試定義一個通用的ADT。 我有一個結構,看起來像這樣: struct grid_type{ void* table; int startX, startY, endX, endY, xDim, yDim; }; ,你可以看到我有這應該是能夠存儲各種數據類型的空指針。 此實例即時試圖指向其通過此函數返回一個int **(二維陣列): int** CreateInt

    1熱度

    3回答

    我需要實現一個簡單的指向一個typedef指針的動態指針數組。 每次用戶請求時使用realloc,數組的大小將按sizeof(指針)增長。 所以我有是這樣的: #include <stdio.h> #include <string.h> #include <stdlib.h> typedef void* node; void printmem(node* a, int c) {

    0熱度

    1回答

    我想在C++中進行如下內存分配。它是細做它喜歡: m_temppkt = new pktstruct(); 和結構是: struct pktstruct { void *address; int length; struct pktstruct *next; };

    -1熱度

    2回答

    我想通過使用指針來實現在c中的氣泡排序但不起作用。誰能幫我?這裏是代碼: #include <stdio.h> #include <stdlib.h> void bubbleSort(void** base, size_t length, int (*compar)(const void*, const void*)); int main(int argc, char* argv[])

    20熱度

    3回答

    我正在學習P線程的整數。我的代碼以我想要的方式執行,我可以使用它。但它給我一個編譯警告。 我編譯使用: gcc test.c -o test -pthread 與GCC 4.8.1。我得到警告 test.c: In function ‘main’: test.c:39:46: warning: cast to pointer from integer of different size [-

    2熱度

    3回答

    #include <stdio.h> #include <string.h> main() { int an_int; void *void_pointer = &an_int; double *double_ptr = void_pointer; *double_ptr = 10; printf("%d", sizeof(*double_ptr)); } 該程

    -1熱度

    1回答

    我在這個程序中遇到了void pointer的問題(我很抱歉不得不提起整個 壞的程序...)。 #include "stdafx.h" void Input_int(int& InputVar, int Min = -2147483647, int Max = 2147483647); void Output_array(void* Array, unsigned int ElementNum