关于recvfrom,sengto参数的疑点

关于recvfrom,sengto参数的疑问

int sendto(int sockfd, const void *msg,int len unsigned int flags, const struct sockaddr *to, int tolen);  
int recvfrom(int sockfd,void *buf,int len,unsigned int lags,struct sockaddr *from,int *fromlen);  
我的疑问是,为什么recvfrom中的fromlen这个参数要用指针类型,而sendto的tolen只要整数类型就可以了?求解答!

------解决思路----------------------
一个要修改其值,一个不用。
------解决思路----------------------
需要首先了解最后一个参数的作用:
sendto的to参数,指向一个含有数据报接受者的协议地址的套接字地址结构,其大小由最后一个参数tolen指定;
recvfrom的from参数,指向一个将由该函数在返回时填写数据报发送者的协议地址的套接字地址结构,而在该套接字地址结构中填写的字节数则放在最后一个参数fromlen所指的整数中返回给调用者。

一句话:
tolen是输入参数,fromlen是输出参数。