파라미터 크기 바이트는 길다 ". 나는 마지막 바이트 수는 size * nmemb
이되어야한다고 생각하지만 몇 가지 이유만으로 두 번째 구문 (크기 = 1)은 나를 위해 일하고있다.FREAD는()의 차이 란 2 및 3
0
A
답변
4
차이점은 다음 두 가지이다 :
- 리턴 값이 실제로 읽은 요소 수 (
nmemb
까지 제로)이다. 성공하면 두 진술 문에 따라 다릅니다. 첫 번째 경우에 :
fread(buf, sizeof(buf), 1, file)
당신은 모두 또는 아무것도를 얻을 것이다;
fread
은 파일이 작은 경우sizeof(buf)
보다 작은 것을 읽을 수 없습니다. 두 번째 경우는 :
fread(buf, 1, sizeof(buf), file);
당신은보다
sizeof(buf)
파일에서 사용 가능한 경우에도fread
는 가능한 한 많은 바이트를 읽을 수 있습니다. 실제로 읽은 요소의 수 (이 경우 바이트)가 리턴됩니다.
0
두 번째 매개 변수는 읽을 요소의 크기를 지정합니다. 세 번째 매개 변수는 읽으려는 요소의 수를 지정합니다.
그래서 첫 번째 경우에 당신은 크기 = 를 sizeof (BUF)의 1 요소를 읽고 싶어. 두 번째 경우
당신 를 sizeof (BUF)의 각 요소는 1 바이트 소자 번호를 판독 할. 두 번째 파일은이 How to set/get unsigned char * to and from std::shared_ptr<uint8_t>? 질문과 같이 전체 파일의 내용을 읽는 데 사용할 수 있습니다.관련 문제
- 1. 2 차이 란
- 2. 차이 차이 사이 란
- 3. A`과의``차이 란 [:] '
- 4. 템플릿 인자 코드 2 개 다음의 차이 란
- 5. 스프링 지속성 XML 차이 란
- 6. 차이 (2)는 I
- 7. RoR의 날짜 차이 3
- 8. 차이
- 9. 간의 차이 및 ::: :::() 스칼라
- 10. Moonlight 2 대 Silverlight 3 : 거대한 성능 차이
- 11. Coldfusion에서 대시 2 개와 대문자 3 사이의 차이
- 12. 파이썬 2.x와 파이썬 3.x 사이의 생성자 평가 차이
- 13. google_conversion_format의 차이 값 (1 2 3)은 무엇입니까?
- 14. iOS의 2 배 차이
- 15. VB - 2 날짜의 차이
- 16. 2 개의 레파지토리의 차이
- 17. 아이폰 OS 2. + 및 3. +
- 18. Powershell의 Python 2 및 3
- 19. Clojure의 (3)과 (3)의 차이
- 20. 2 개의 제국 길이의 차이
- 21. 차이 {A, B} == 2'b10과 & ~
- 22. ActionScript 3 contentloaderinfo 란 무엇입니까?
- 23. __float__ 및 __round__ 파이썬 2 및 3
- 24. 차이()는
- 25. IE7과 Firefox 3 렌더링 차이
- 26. 데이터와 NSData의 스위프트 3 차이
- 27. Python 3 변수 목록의 차이
- 28. 레일 3 - widget.save와 widget.save의 차이!
- 29. 차이 (*.) 및
- 30. 삽입하지 쿼리 및 업데이트 차이
_ 작업이 아닌 _을 정의하십시오. 그것은 컴파일합니까? 두 버전 모두 작동해야합니다. [MCVE]를 게시 할 수 있습니까? –
코드에서'buf'는 무엇입니까? –
@MichaelWalz 반환 값은 항상 0이었습니다. 아래 답변의 이유를 이해했습니다. – i486