测试文件加密时,考虑到中文路径问题,就做了个测试,结果运行时错误报出:invalid allocation size:4294967295 bytes。
看了一些别人的说法,有人提到“4294967295 = 0xFFFFFFFF 就是 -1 ”,但我想这个问题是由中文引起的,所以跟踪程序发现,文件虽然看上去是被读取了,事实上读出来的大小为 -1。
所以在给数组分配大小时,便报出上边的错误。
现在需要解决下文件读写含有中文路径的问题。
补充:中文路径的解决:
std::locale::global(std::locale(""));