[表示 : 全て 最新50 1-99 101- 201- 301- 2chのread.cgiへ]
Update time : 05/28 11:19 / Filesize : 97 KB / Number-of Response : 342
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【初心者歓迎】C/C++室 Ver.44【環境依存OK】



187 名前:デフォルトの名無しさん [2007/11/09(金) 10:24:19 ]
ビット列の出現個数を数えたいのですが毎回結果が違います 何ででしょうか?
#include <iostream>
#include <windows.h>
#include <process.h>
using namespace std;
#define N 1000
#define K 320000
unsigned int su[256];

unsigned WINAPI open(void *p){
unsigned long size; char *buf=new char [K+100];
HANDLE fp=CreateFile((char*)p,GENERIC_READ,0,NULL,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
ReadFile(fp,buf,K,&size,NULL);
for(int i=0;i<size;i++)su[ (unsigned char)buf[i] ]++;}

main(){
WIN32_FIND_DATA fd;
char path[200]="d:\\aaa\\",serchpath[200];
strcpy(serchpath, path); strcat(serchpath, "*");
SetCurrentDirectory(path);

HANDLE hd = FindFirstFile(serchpath, &fd);
int n; HANDLE hf[N];
for(n=0;n<256;n++)su[n]=0;
for(n=0;;n++){
for(;;){if(!FindNextFile(hd, &fd))goto end;
if(!(fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))break;}
hf[n]=(HANDLE)_beginthreadex(NULL, 0, open,(void*)fd.cFileName, 0 ,NULL);}

WaitForMultipleObjects(N, hf, TRUE, INFINITE);
end:
for(n=0;n<256;n++)cout<<n<<" no kosu "<<su[n]<<endl;}






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<97KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef