在多线程编程时遇到的问题

在多线程编程时遇到的问题

ID:30801675

大小:76.50 KB

页数:7页

时间:2019-01-03

在多线程编程时遇到的问题_第1页
在多线程编程时遇到的问题_第2页
在多线程编程时遇到的问题_第3页
在多线程编程时遇到的问题_第4页
在多线程编程时遇到的问题_第5页
资源描述:

《在多线程编程时遇到的问题》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、同学们在多线程编程时遇到的问题整理(1)如何根据文本文件大小,#include最后更新时间:2011-12-7动态创建一个字符数组存放文本文件?#includeusingnamespacestd;char*textBuf;〃定义一*个char*型指针intmain(intargc,char*argv[]){ifstreaminFile;intnFileLen;inFile.openCtext.txt");〃打开一个文件if(!inFile){cout«"Fileopenerror."«endl;}inFile.seekg(0,ios::end);〃把

2、文件读写指针移到文件末尾nFileLen=inFile.tellgO;//获取文件长度inFile,seekg(0,ios::beg);〃把文件读写指针移到文件的起始位置textBuf=newchar[nFileLen+lJ;//根据文件长度,动态申请一块内存,多加一个字节,存放WinFile»textBuf;〃把文件内容读入该内存屮cout«texlBuf«endl;return0;这段代码看似正确,但是,如果文件中有空格和换行,则发现读出的内容仅是文件的一部分,即从文件第一个字节到文件中第一个空格或换行符出现位置。这是因为“inFile»textBuf;”的特点,它能够读取连续的字符

3、,直至遇到空格或换行符为止。但是文件屮都有空格或换行,怎么才能一次读入所有内容呢?用ainFile.read(textBuf,nFileLen);”代替“inFile»textBuf;”。read()方法不区分任何字符的读入内容,最多可读入变量nFileLen指定的字符数,而且不会在读入字符的末尾自动加,(F,如果你需要把读入内容变成真正的字符串,需要自己编程在末尾加,W,否则,你不能用”coutvvtextBuP输出读入的内容。#includeusingnamespacestd;char*textBuf;//定义个char★型指针

4、intmain(intargc,char*argv[]){ifstreaminFile;intnFileLen;inFile.open("text.txt");//打开一个文件if(!inFile){cout

5、ile.read(textBufznFileLen);//把文《I:内容读入该内存中textBuf[nFileLen]=*';cout

6、cess.hn#include#includeHANDLEhmutex;unsignedint_stdcallThread1(void*p){inti,j;for(i=0;i<5;i++){WaitForSingleObject(hmutexJNFINITE);for(j=0;j<5;j++){cout«nInthreadl.H«endl;ReleaseMutex(hmiitex);return0;unsignedint_stdcallThread2(void*p){inti,j;for(i=0;i<5;i++){WaitForSingleObj

7、ect(hmutex,INFINITE);for(j=0;j<5;j++){cout«nInthread2.n«endl;}ReleaseMutex(hmutex);}return0;}voidmain(intargc,char*argv[]){HANDLEhThread[2];unsignedthreadID[2];hmutex=CreateMutex(NULL,FALSE,NULL);cout«nCreatingthreadl"

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。