----------------------------------------------------- 补充1
这个问题不难解决,在读数据的时候,需要多读一点,但是下次再读取的时候,不能仅接着上次的尾部读取了,而是应该倒退几个字符,倒退的数目应该是:最大特征字符长度 - 1。
下面是个简单的图解:
------------------|xxx 3 xxx|
---------|xxx 2 xxx|
|xxx 1 xxx|
################################################
一次性的new出一个特别巨大的内存,是一个愚蠢的做法,如果是一个大于4G的文件,那么你就会更加困难。虽然系统会自动的申请虚拟内存,但是这将极大的影响函数处理的速度,这也是我们国家软件行业所存在的通病,虽然很多程序也能够运行,但是效率与速度都相当的落后,我们应该把软件做的尽可能的快、智能、便捷、清丽。
你还没了解文件存储的方便之处呢,你用个for循环多麻烦了,看看这个,发送端:
int SendFileLength = 0//保存已经发送的文件的长度
while (SendFileLength <filelength)
{
file.Seek(SendFileLength,CFile::begin)
sockSenderror = send(SendFileSock,buffer,TempSendLength,0)
if(SOCKET_ERROR == sockSenderror)
{
closesocket(SendFileSock)
return 0
}
SendFileLength += TempSendLength
}
接收端:
int finish=0//保存receive函数的返回值
while(true)
{
finish = recv(ConnSock,buffer,BUFFERSIZE,0)//开始写入文件
if(SOCKET_ERROR == finish)
{
AfxMessageBox("接收文件错误!")
return 0
}
file.Write(buffer,finish)//自动就写到文件末尾了
}
你把这两段组织组织就行了,想发多大就发多大,剩下的交给你了。
真不行了再百度hi一下。
如果您在下载 VC2010 后只看到一堆文件,请按照以下步骤进行 *** 作:1. 打开下载文件夹并定位到 VC2010 下载文件,查看文件扩展名是否为 .iso。如果是,则说明您已经下载了 VC2010 ISO 镜像文件,可以继续进行下一步 *** 作。如果不是,请获取正确的下载文件。
2. 将 ISO 文件复制到您想要安装 VC2010 的电脑上,并双击该文件来挂载 ISO 文件。windows 10 自带的木虫镜像挂载即可。
3. 双击打开加载后的 ISO 文件,您将看到一个名为“autorun.exe”的文件,双击它以开始安装 VC2010。
4. 按照安装向导的指示进行 *** 作,选择您需要安装的组件和选项。如果您不确定哪些选项适合您的需求,请选择默认设置进行安装。
5. 等待安装完成后,您就可以开始使用 VC2010 进行编程了。
希望以上步骤能帮助到您。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)