【发布时间】:2014-05-09 18:36:48
【问题描述】:
我有一个动态分配的内存:
//dynamic buffer
char *mybuffer;
cin>>n;
mybuffer=new char[n];
//open file for reading
ifstream inpt(filename.c_str(), ios::binary);
for(unsigned int i=0;i<n;i++){
//copy every single character into buffer
inpt.read(mybuffer[i],1);
}
says error, argument of type char is incompatible with type char*
我需要逐字符读取文件并存储在缓冲区中。请注意,这是示例代码。我实际上应该读取多个文件并存储在单个缓冲区中,所以我应该使用带索引的缓冲区。
如何改进此代码?
【问题讨论】:
-
你甚至不需要
for循环,只需:inpt.read(mybuffer, n)。
标签: c++ istream ostream filehandle