我读整型二进制文件为int矢量。当我使用排序功能的矢量是零...在C++中排序矢量
我知道矢量是好的!
什么可能是错的?
std::ifstream input("D:\\Amostra.txt", ios::binary);
vector<int> v (NumBlocks*ELEMENTS_PER_BLOCK*sizeof(int));
input.read(reinterpret_cast<char *>(&v[0]), NumBlocks*ELEMENTS_PER_BLOCK*sizeof(int));
sort(v.begin(), v.end());
for (int i=0; i<ELEMENTS_PER_BLOCK*NumBlocks; i++){
cout << v[i] << endl;
};
system("pause");
您正在将'int'转换为'char *'。我不认为这真的应该工作?我确定你不想'char'来代替? –
请检查'NumBlocks'的值 – Chani