在C/C++中,以下代碼完美無缺。 void *pa;
void fa(void*);
int a; // or any type
pa = &a;
fa(&a);
我很困惑,爲什麼這不是函數的返回類型真: void fa(void);
int fb(void);
void (*pa)(void);
int (*pb)(void);
pa =
我試圖完成下列工作: 給出的函數: int f(void *p) 取p的第一個字節,並提取其作爲一個字符。然後根據該字符決定將哪些附加字節提取爲短整數。例如,如果我有一個特定的字符c,然後提取字節4和7作爲短整數並將它們存儲在單獨的變量中;如果我有一個不同的字符d提取字節3,4,5,並將它們存儲爲單獨的變量。用這些信息執行一些其他不相關的代碼。我一直在掙扎幾個小時。 我嘗試以下: int f(vo
好吧,雖然關於void*,The C Programming Language (K&R)和The C++ Programming Language (Stroustrup)這樣的書籍的詳細資料Stack很混亂。我學到了什麼? void*是一個沒有推斷類型的泛型指針。它需要轉換爲任何已定義的類型,並且打印void*只是產生地址。 我還知道什麼? void*不能被解除引用,並且迄今爲止仍然是C/C+
我在MQTT應用程序的工作,併爲int當我收到來自MQTT經紀人有效載荷的信息,並試圖將其從void *的是MESSAGE->的有效載荷爲int的轉換的 signed int var_1=*((int*) message->payload);
,而不是將其轉換爲它是將其轉換爲另一個數,看到這個我使用下面的代碼: printf("Message:%s\n",message->payload);