[英]C++ Comparing files in 2 folders
我正在為兩個文件夾的內容生成哈希。 然后,我想比較所有哈希,一次將文件夾a與文件夾b的所有內容進行比較。
如果它們每個文件都相等,則可以,但是我計划在文件夾B中容納大約500個文件,在文件夾A中容納5-10個文件。目前使用的循環即時消息如下
for (i=0;i<nbfiles1;i++)
{
printf("file1: %s\n", files1[i]);
for (j=0;j<nbfiles2;j++)
{
printf(" file2: %s\n", files2[j]);
cs=ph_audio_distance_ber(hashes[i],lens[i],hashes2[j],lens2[j],threshold,block_size,Nc);
double max_f = 0.0;
for (index=0;index<Nc;index++)
{
if (cs[index] > max_f)
max_f = cs[index];
}//end if
printf(" cs = %f\n", max_f);
}//end for
}//end for
其中nbfiles1是文件夾A中的文件數,nbfiles 2是文件夾B中的文件數
如果每個文件中的文件數相等,則循環工作正常,但是如果文件數不相等,則崩潰。 我知道答案正盯着我,但經過3個小時的觀察,我還沒有意識到我錯了。
當您沒有足夠的內存或嘗試分配無效的大小時,會引發std :: bad_alloc異常。 檢查完成內存分配的代碼,如果找不到,向我們顯示更多。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.