#include <stdio.h>
void pass(void* );
int main()
{
int x;
x = 10;
pass((void*)x);
return 0;
}
void pass(void* x)
{
int y = (int)x;
printf("%d\n", y);
}
output: 10
上記のコードからの私の質問..
通常の変数を void* またはポインター変数に型キャストするとどうなりますか?
関数定義では引数がポインタ変数であるため、変数のアドレスを関数に渡す必要があります。しかし、このコードは通常の変数を渡します..
この形式は、Linux pthread プログラミングで使用されています... 私は初心者レベルの C プログラマーです。このプログラムをLinux gccコンパイラでコンパイルしています..