У меня есть домашнее задание, которое я делаю на C. Я новичок, так что, вероятно, это очень легко, но в любом случае у меня есть проблема с ним.
int main(int argc, char* argv){
int fd=open(argv[1], O_RDONLY);
int fileLength=(int)lseek(fd,0,SEEK_END);
lseek(fd,0,SEEK_SET);
char buf[fileLength];
read(fd,buf,fileLength);
int i=0;
for(i=0; i<fileLength; i++){
printf("%c",buf[i]);
}
printf("\n");
}
Я получаю эту ошибку:
warning: passing argument 1 of ‘open’ makes pointer from integer without a cast
Если я пишу "file"
вместо argv[1]
, все в порядке.