./stat 파일이름
272
작성한 질문수 1
./stat 파일이름을 넣어도 파일 사이즈가 96으로 고정, 출력도 ???만 뜨는데 혹시 왜 그런걸 까요?
int main(int argc, char **argv)
{
struct stat statbuf;
if (argc < 2) {
printf("usage: %s filename\n", argv[0]);
return -1;
}
if (stat(argv[1], &statbuf)) {
printf("stat() fail\n");
return -1;
}
printf("filename: %s\n", argv[1]);
printf("size: %ld\n", statbuf.st_size);
if (S_ISDIR(statbuf.st_mode)) {
printf("it is directory\n");
} else if (S_ISREG(statbuf.st_mode)) {
printf("it is regular file\n");
} else {
printf("???\n");
}
return 0;
}
답변 2
0
안녕하세요 김의람님.
"???"이 출력됐다면 입력된 파일이 디렉터리도 아니고 일반 파일도 아니라는 뜻이 되는데요..
다시 컴파일하기 전/후에 첫번째 파라미터로 같은 파일을 지정하셨을까요?
혹은 실행 파일을 실행하신 경로가 달라지지는 않았을까요?
말씀대로 코드 수정도 없고, 실행 경로나 입력 파일 모두 같았는데 다른 결과가 나왔다면.. 이해하기 힘든 상황입니다.ㅠ
기억을 더듬어보시면 힌트가 생각나지 않을까 싶습니다.
0
혹시 몰라서 stat 파일을 지웠다가
다시 gcc -o stat stat.c 명령어로 컴파일을 하니
이번엔 다시 제대로된 사이즈와 설명이 나옵니다.
코드 내용에서 달라진게 없는데 이럴 수가 있나요?
inotify 객체에 등록된 watch descriptor 해제 관련 질문
0
37
2
select API 실습 코드 질문
0
40
2
wsl에서 fcntl사용
0
72
2
inotify_event 구조체 질문 [파일 이벤트 - 라이브 프로그래밍]에서...
0
179
2
fopen r, r+모드 차이
0
460
2
강의를 모두 수강하고 스스로 구현하면 좋을 과제나 프로젝트 주제가 있을까요?
0
326
1
pthread 질문
0
419
2
I/O Multiplexing(select) 질문
0
324
1
inotify.c. ret 질문
0
302
1
inotify.c 질의합니다.
1
317
1
child process
0
715
1
read/blocking
0
564
1
flock
0
565
1
system call
0
598
1
pthread_create() 함수 이용했을 때, thread가 두번 호출되는 것 처럼 나타납니다. 왜 그런것인가요?
0
487
1
fork() 함수 사용시 결과 관련 질문
0
371
1
exec 관련 궁금한 사항
0
450
2
파일 디스크립터와 FILE 구조체에 대한 질문
0
552
1
buf 선언에 따른 read() fail 문제
0
251
2
파일 이벤트 - 라이브 프로그래밍 에서 캐스팅 질문
0
254
1
2번 multi thread 방법 질문
0
242
1
segmentation fault 발생 관련 문의
1
842
1
라이브 코딩 실습 코드
0
235
1
화면이 짤려요
0
549
4





