파일이 있지만 열려있는 파일은 항상 -1을 반환합니다.

RNK

"~ / workspace / Test.txt"파일이 있지만 fd는 항상 -1을 반환합니다. 누군가 코드에 무엇이 잘못되었는지 힌트를 줄 수 있습니까? 감사.

 int fd = open("~/workspace/Test.txt", O_RDONLY);
 cout << "fd is "<<fd<<endl;
 if (fd < 0) {
    cout << "did not find file"<<endl;
    return false;
 }
바실 스타린 케 비치

(OS가 Linux와 같은 Posix라고 가정)

~확장되어야한다. 일반적으로 쉘이 확장합니다. 그러나 open실제 파일 경로를 원합니다.

시도해 볼 수 있습니다.

std::string fname (getenv("HOME"));
fname += "/workspace/Test.txt";
int fd = open(fname.c_str(), O_RDONLY);
if (fd<0) {
   std::cerr << "failed to open " << fname 
             << " : " << strerror(errno) << std::endl;
   return false;
}   

참조 글로브 (7) , 만일 wordexp (3) , 의 GetEnv (3) , strerror는 (3) , 개방 (2) , 싸다 (7)

고급 Linux 프로그래밍 읽기

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

os.listdir은 특수 문자가있는 이상한 파일 이름 문자열을 반환합니다.

분류에서Dev

다른 모듈 파일의 동일한 변수 이름은 항상 마지막 항목을 반환합니다.

분류에서Dev

여러 파일이있는 Makefile은 항상 모든 것을 빌드합니다.

분류에서Dev

GetResourceAsStream이 null을 반환합니다. 파일이 있습니다.

분류에서Dev

항목이 다르지만 동일한 열이있는 폴더에서 다른 csv 파일을 병합하는 방법은 무엇입니까?

분류에서Dev

파일을 열면 항상 QtSpim에서 "-1"이 반환됩니다.

분류에서Dev

일치하지 않는 항목을 검색하고 해당 파일의 열 1을 반환합니다.

분류에서Dev

일치하지 않는 항목을 검색하고 해당 파일의 열 1을 반환합니다.

분류에서Dev

VLOOKUP은 일치 항목이 있지만 # N / A를 반환합니다 (= A1 = B1 == "TRUE").

분류에서Dev

indexOf () 함수는 동일한 문자열이 있어도 항상 0을 반환합니다.

분류에서Dev

필터가있는 Get-ChildItem은 일치하지만 일치하지 않는 파일을 포함하는 파일을 반환합니다.

분류에서Dev

Laravel 스토리지는 FileNotFoundException을 반환하지만 파일이 있습니다.

분류에서Dev

AutoCAD는 파일이 있지만 빈 파일을 엽니 다.

분류에서Dev

fgets는 비어 있지 않은 파일에서 null을 반환합니다.

분류에서Dev

항상 false를 반환하는 파일이 존재합니다.

분류에서Dev

일치하는 항목이있을 때만 인덱스 -1을 반환합니다.

분류에서Dev

템플릿이있는 Twitter 자동 완성 기능은 항상 1 행의 데이터 만 반환합니다.

분류에서Dev

ToUnicodeEx ()는 파이썬에서 항상 0을 반환합니다.

분류에서Dev

django form.is_valid ()는 파일 업로드시 항상 0을 반환합니다.

분류에서Dev

이 두 문자열을 비교할 수없는 이유는 무엇입니까? 문자열 입력은 동일하지만 항상 false를 반환합니다.

분류에서Dev

fileExistsAtPath가 항상 false를 반환하지만 내 파일이 존재합니다.

분류에서Dev

리소스 (resx) 파일은 항상 영어 (기본값) 문자열을 반환합니다.

분류에서Dev

strtotime은 항상 1 월 1 일을 반환합니다.

분류에서Dev

원본에서 폴더에있는 대상으로 만 파일을 복사하는 방법, 다른 모든 항목은 복사하지 않아야합니다.

분류에서Dev

삭제했지만 어딘가에 열려있는 파일을 복구하는 방법이 있습니까?

분류에서Dev

삭제했지만 어딘가에 열려있는 파일을 복구하는 방법이 있습니까?

분류에서Dev

열려 있지 않은 파일을 읽으려고 할 때 libfuse 파일 시스템이 어떤 시스템 오류를 반환해야합니까?

분류에서Dev

Python은 파일 이름을 읽을 수 있지만 이름을 바꾸려는 파일을 찾을 수 없다고 말합니다.

분류에서Dev

루프는 항상 동일한 마지막 값을 반환합니다.

Related 관련 기사

  1. 1

    os.listdir은 특수 문자가있는 이상한 파일 이름 문자열을 반환합니다.

  2. 2

    다른 모듈 파일의 동일한 변수 이름은 항상 마지막 항목을 반환합니다.

  3. 3

    여러 파일이있는 Makefile은 항상 모든 것을 빌드합니다.

  4. 4

    GetResourceAsStream이 null을 반환합니다. 파일이 있습니다.

  5. 5

    항목이 다르지만 동일한 열이있는 폴더에서 다른 csv 파일을 병합하는 방법은 무엇입니까?

  6. 6

    파일을 열면 항상 QtSpim에서 "-1"이 반환됩니다.

  7. 7

    일치하지 않는 항목을 검색하고 해당 파일의 열 1을 반환합니다.

  8. 8

    일치하지 않는 항목을 검색하고 해당 파일의 열 1을 반환합니다.

  9. 9

    VLOOKUP은 일치 항목이 있지만 # N / A를 반환합니다 (= A1 = B1 == "TRUE").

  10. 10

    indexOf () 함수는 동일한 문자열이 있어도 항상 0을 반환합니다.

  11. 11

    필터가있는 Get-ChildItem은 일치하지만 일치하지 않는 파일을 포함하는 파일을 반환합니다.

  12. 12

    Laravel 스토리지는 FileNotFoundException을 반환하지만 파일이 있습니다.

  13. 13

    AutoCAD는 파일이 있지만 빈 파일을 엽니 다.

  14. 14

    fgets는 비어 있지 않은 파일에서 null을 반환합니다.

  15. 15

    항상 false를 반환하는 파일이 존재합니다.

  16. 16

    일치하는 항목이있을 때만 인덱스 -1을 반환합니다.

  17. 17

    템플릿이있는 Twitter 자동 완성 기능은 항상 1 행의 데이터 만 반환합니다.

  18. 18

    ToUnicodeEx ()는 파이썬에서 항상 0을 반환합니다.

  19. 19

    django form.is_valid ()는 파일 업로드시 항상 0을 반환합니다.

  20. 20

    이 두 문자열을 비교할 수없는 이유는 무엇입니까? 문자열 입력은 동일하지만 항상 false를 반환합니다.

  21. 21

    fileExistsAtPath가 항상 false를 반환하지만 내 파일이 존재합니다.

  22. 22

    리소스 (resx) 파일은 항상 영어 (기본값) 문자열을 반환합니다.

  23. 23

    strtotime은 항상 1 월 1 일을 반환합니다.

  24. 24

    원본에서 폴더에있는 대상으로 만 파일을 복사하는 방법, 다른 모든 항목은 복사하지 않아야합니다.

  25. 25

    삭제했지만 어딘가에 열려있는 파일을 복구하는 방법이 있습니까?

  26. 26

    삭제했지만 어딘가에 열려있는 파일을 복구하는 방법이 있습니까?

  27. 27

    열려 있지 않은 파일을 읽으려고 할 때 libfuse 파일 시스템이 어떤 시스템 오류를 반환해야합니까?

  28. 28

    Python은 파일 이름을 읽을 수 있지만 이름을 바꾸려는 파일을 찾을 수 없다고 말합니다.

  29. 29

    루프는 항상 동일한 마지막 값을 반환합니다.

뜨겁다태그

보관