我想从文件中读取一个数字并增加数量,而不是将其写入文件。我想使用读/写而不是fscanf / fprintf。我试图将整数更改为字符串但我在Google上发现itoa并不存在于linux中。这是我的代码:
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
main(int argc,char *argv[]){
int f;
f=open(argv[1],O_RDWR);
char c[10];
read(f,c,10);
int ceva=atoi(c);
printf("%d ",ceva);
ceva++;
//itoa (ceva,c,10);
lseek(f,0,SEEK_SET);
write(f,ceva,sizeof(int));
}
答案 0 :(得分:3)
你对fprintf
有什么看法?你需要以某种方式将整数转换为字符串。另一种选择是使用snprintf
将整数转换为字符串,然后将write
转换为字符串。