如何将struct sockaddr_in z
传递给我的方法?
void method(?);
int main(void){
struct sockaddr_in z;
...
}
void method(?){
....
}
什么代替“?”?
非常感谢!
答案 0 :(得分:5)
使用指针,如下所示:
void method(struct sockaddr_in *z);
int main(void){
struct sockaddr_in z;
z.sin_port = 4242;
method(&z);
}
void method(struct sockaddr_in *z){
printf("%i\n", z->sin_port);
}
答案 1 :(得分:1)
按值传递struct
在C中完全合法:
void func(struct sockaddr_in z);
int main(void)
{
struct sockaddr_in z = {0};
func(z);
}
void func(struct sockaddr_in z)
{
printf("%d\n", z.sin_port);
}