犯错笔记

从今天开始记录我编程中所犯过的错误的点点滴滴... ...

2013.01.07更新

今天写项目中遇到的问题:

1、用send函数传递结构体数据的方法:sendto(socketUdp,(char*)&LoadData,strlen((char*)&LoadData)+1,0,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR));

2、如何将CString对象转化为字符数组:sprintf(LoadData.InstrumentID,"%s",m_StringID);   写的时候发生了内存泄露,但是在转化回去内存泄露就消失了。

3、getwindowtext()/setwindowtext() 与 updatedata() 效果一样,都是获得编辑框的数据。不同是前者针对某一个控件操作,而后者对当前对话框的所有控件操作。

      与上两个相类似的函数还有getdlgitemtext()和setdlgitemtext()

4、socket的各种问题:

4.1、给别人发消息自己为服务器,绑定自己IP,发送到别人IP。

4.2 、WSASendTo()中WSAGetLastError()出现10055错误。系统缓冲区问题,第三个参数为WSABUF结构体数目,而非要发送的字节数...

4.3、使用WSASendTo()函数发送自定义的结构体有两种办法。

4.3.1、将要发送的结构体强转成(WSABUF*),但是我碰到10055问题,现在还没解决。************************************///!!!!!!!

4.3.2、将要发送的结构体的长度和内容分别强转成(unsigned)和(char*)类型赋值给WSABUF的结构体中,然后用wsabuf发送。成功!

5、memcpy()函数不能拷贝到CString类型的对象中,只能拷贝到char[]型数组中,然后再通过char型数组赋值给CString类型的对象?

6、在对话框中加入自己写的函数时,千万别忘了在函数实现的时候加上  类名::(CXXX::)!

 

2013.01.15更新

7、基于TCP和基于UDP的网络应用程序在发送和接收数据时使用的函数是不一样的:TCP使用send和recv,UDP使用sendto和recvfrom

8、WinSock五种网络模型的优势以及每种网络模型的适用条件

select模型:阻塞

优势:

不足:

异步选择:非阻塞

优势:

不足:

异步事件:非阻塞

优势:可在非窗口windows程序中实现对多个套接字的管理。

不足:没个模型最多只能管理64个套接字,如果多于64个,要额外创建线程。(可用线程池)

重叠IO:非阻塞

优势:

不足:

完成端口:非阻塞

优势:

不足:

9、使用编译器时无意按了Insert会让回车不换行,再按一次就好了。

 

1月17日更新

10、 

 

 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值