我遇到了一个我无法弄清楚错误的问题。我的程序的目的是计算文件“test”中的字符但我一直得到这个错误“函数core.stdc.stdio.getc(shared(_IO_FILE)* stream)不能使用参数类型(文件)调用”
这是我的代码:
import std.stdio;
import std.file;
import std.string;
import core.stdc.stdio;
void main()
{
char ch;
int charCount;
File file = File("test.txt","w");
file=File("test,txt","r");
while(!file.eof())
{
ch = getc(file);
charCount++;
}
file.close();
}
答案 0 :(得分:1)
std.stdio.File
不是C文件句柄,但是您正在使用C库中的getc
,它需要一个。
最简单的方法是使用readText from std.file,它会立即读取整个文件:
int count = "test.txt".readText.length;
由于它返回一个字符数组,你可以只取这个数组的长度来计算。