您的位置:程序门 -> vc/mfc -> 网络编程



在使用receivefrom时,提示cannot convert parameter 4 from "const int" to "unsigned int &"?(在线等待)


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


在使用receivefrom时,提示cannot convert parameter 4 from 'const int' to 'unsigned int &'?(在线等待)
发表于:2008-01-18 22:40:48 楼主
在头文件里有#define   talk_rec_port   10001,
在使用sendto   (m_pframe,   nbuflen   +   sizeof(struct   frame),
talk_rec_port,m_ip[tem],   nflags);时,talk_rec_port没有问题,但是在使用

receivefrom   (m_pframe,m_ilen*3,m_ip2[m_num1],talk_rec_port,nflags);时就提示如上的错误,怎么办啊?
发表于:2008-01-18 23:07:271楼 得分:0
没有人会吗?不会吧??????
发表于:2008-01-18 23:37:352楼 得分:0
类型转换一下
发表于:2008-01-18 23:49:263楼 得分:0
晕。。。。就问该怎么办呢?贴出源码来吧..
发表于:2008-01-18 23:59:564楼 得分:0
自己解决呗,这个自己改最好,以前我也改过.
发表于:2008-01-19 00:02:115楼 得分:0
unsigned   int   port   =   talk_rec_port
receivefrom       (m_pframe,m_ilen*3,m_ip2[m_num1],port   ,nflags);
发表于:2008-01-19 00:08:526楼 得分:0
楼上正解.你的talk_rec_port是个常量啊.不允许做为引用来使用的.
发表于:2008-01-19 00:27:507楼 得分:0
那为什么在sendto       (m_pframe,       nbuflen       +       sizeof(struct       frame),  
talk_rec_port,m_ip[tem],       nflags);时,没有错误呢??
发表于:2008-01-19 00:45:018楼 得分:0
还有一个问题要问:
我把receivefrom   (m_pframe,m_ilen*3,m_ip2[m_num1],talk_rec_port,nflags);函数加在了
void   crecsocket::onreceive(int   nerrorcode)这个消息响应函数里
[     目的就是为了能过接受m_ip2[m_num1]里存储的不同的ip地址   ,来的声音   ]
请问这样做可以吗?
发表于:2008-01-19 00:50:409楼 得分:0
怎么又没有人,说话了?
发表于:2008-01-19 00:57:5510楼 得分:0
都睡着了吗?呵呵。。。。。。。
发表于:2008-01-19 01:30:2711楼 得分:0
本人依然在线等待。。。。。。。。。。。。。。。。。。。
发表于:2008-01-19 02:39:0312楼 得分:0
unsigned   int   &明明告诉你是一个引用,你sendto的那个参数不是引用,当然就可以了啊.变量,常量,参数的类型,麻烦先学一下基本的东西.至少这样的错误是很明显的,应该可以看得出啊.

不知道你有没有重载onaccept(),应该是放在这里面的.
发表于:2008-01-19 10:03:2413楼 得分:0
请看函数的定义:int   receivefrom(void*   lpbuf,int   nbuflen,cstring&   rsocketaddress,uint&   rsocketport,int   nflags   =   0   );

而你的receivefrom       (m_pframe,m_ilen*3,m_ip2[m_num1],talk_rec_port,nflags);
实际上是receivefrom       (m_pframe,m_ilen*3,m_ip2[m_num1],10001,nflags);

显然不能将   10001   转换为   uint   &


快速检索

最新资讯
热门点击