【Leetcode】157. Read N Characters Given Read4

The API: int read4(char *buf) reads 4 characters at a time from a file.

The return value is the actual number of characters read. For example, it returns 3 if there is only 3 characters left in the file.

By using the read4 API, implement the function int read(char *buf, int n) that reads n characters from the file.

The read function will only be called once for each test case.

1 迭代的方法:循环调用read4函数,直到读出我们想要的字符数为止。

2 有一种特殊的情况,就是还没有读到我们想要的字符数,但是文件已经扫到尾部了,这时候只返回实际读出的字符数。

3 初始化一个4个字符buffer:['']*4

4 要考虑file有可能为空,也就是read4返回0,则直接break就行

5 要考虑特殊情况:file已经为空了,但是需要读的n还有;还有read4读出来的比n多,要做一下比较


你可能感兴趣的:(【Leetcode】157. Read N Characters Given Read4)