╰☆忝婲雨☆╮ 发表于 2018-8-9 12:52:33

遇到一个指针问题不能理解

connect(sockclient,(struct sockaddr*)&addr,sizeof(addr));
&addr的地址,在强制转换为结构体sockaddr*类型,这种指针搞这么复杂干嘛?

claws0n 发表于 2018-8-9 12:52:34

C语言是善用内存的。如果没有指定, &addr 可能是其他类型的指针。结构体的占用空间可大可小,若没有指定,读取的数据会不齐全。
可用 typedef 取别名简化,但强制转型是必要的

BngThea 发表于 2018-8-9 12:56:53

应该是为了保证形式和形参的约定形式保持一致
页: [1]
查看完整版本: 遇到一个指针问题不能理解