사용자로부터 총 다섯 개의 숫자(정수)를 입력 받아서 순서대로 파일에 저장하는
프로그램을 작성하자
흠 이건 정수를 그대로 파일에 담는건데... numeric.dat 를 열어보면 내용이 깨져있다.
과연 제대로 들어가는 건가?
확인 할려면 파일을 읽어 출력해보면 알거같고
fwrite 함수.... c언어 초보분들은 좀 어려운 함수일듯하다
이것도 엄연히 표준함수이다
잠깐 설명을 하자면 일단 선언문을 보면
size_t fwrite(void *ptr, size_t size, size_t count, FILE *fp);
void *가 인자로 들어가 있다.
이말은 곳 어떤 데이터 형도 받겠다는 것이다.
c++에 오버로드를 능가한 c의 오버기능..ㅡㅡ
size_t 요건 데이타 타입이다. 이것도 엄연히 표준화 되어있는 것이다.
지금 한번 찾아보겠다.. 과연 size_t 가 뭘까..(새벽 5시에 하도 심심해서..ㅋㅋ)
아 이건 엄연히 리눅스 시스템 기준인 gcc이다.
윈도우컴파일러는 다를것이다....
(검색중............)
size_t 찾는다는 것이 NULL을 찾았습니다.
우리가 C언어에 쓰는 NULL은 뭘까?
우분투에서는 /usr/include/linux/stddef.h 에 정의된 NULL
#if defined(__cplusplus)
#define NULL 0
#else
#define NULL ((void *)0)
#endif
저도 이렇게 보는건 처음인데..ㅋㅋ
c++에서는 NULL을 0으로 정의하네요
걍 c에서는 void *0으로 정의...
다시 size_t 를 찾아서....
(검색중.................)
아놔 못찾았다.
뭐 사실 이게 중요한게 아니다 size_t를 쓰는 이유는 말 그대로 시스템에 따라 변환 가능성이
있는 경우와 일정한 형식표현으로 본다면 요게 무슨타입인지 상관없다.
왜냐면 그냥 쓰면 되기 (ㅡㅡ) 때문이다. 이유달지말자..
우리가 사과가 왜 사과인지 고민할 필요가 있나?
프로그램을 작성하자
흠 이건 정수를 그대로 파일에 담는건데... numeric.dat 를 열어보면 내용이 깨져있다.
과연 제대로 들어가는 건가?
확인 할려면 파일을 읽어 출력해보면 알거같고
fwrite 함수.... c언어 초보분들은 좀 어려운 함수일듯하다
이것도 엄연히 표준함수이다
잠깐 설명을 하자면 일단 선언문을 보면
size_t fwrite(void *ptr, size_t size, size_t count, FILE *fp);
void *가 인자로 들어가 있다.
이말은 곳 어떤 데이터 형도 받겠다는 것이다.
c++에 오버로드를 능가한 c의 오버기능..ㅡㅡ
size_t 요건 데이타 타입이다. 이것도 엄연히 표준화 되어있는 것이다.
지금 한번 찾아보겠다.. 과연 size_t 가 뭘까..(새벽 5시에 하도 심심해서..ㅋㅋ)
아 이건 엄연히 리눅스 시스템 기준인 gcc이다.
윈도우컴파일러는 다를것이다....
(검색중............)
size_t 찾는다는 것이 NULL을 찾았습니다.
우리가 C언어에 쓰는 NULL은 뭘까?
우분투에서는 /usr/include/linux/stddef.h 에 정의된 NULL
#if defined(__cplusplus)
#define NULL 0
#else
#define NULL ((void *)0)
#endif
저도 이렇게 보는건 처음인데..ㅋㅋ
c++에서는 NULL을 0으로 정의하네요
걍 c에서는 void *0으로 정의...
다시 size_t 를 찾아서....
(검색중.................)
아놔 못찾았다.
뭐 사실 이게 중요한게 아니다 size_t를 쓰는 이유는 말 그대로 시스템에 따라 변환 가능성이
있는 경우와 일정한 형식표현으로 본다면 요게 무슨타입인지 상관없다.
왜냐면 그냥 쓰면 되기 (ㅡㅡ) 때문이다. 이유달지말자..
우리가 사과가 왜 사과인지 고민할 필요가 있나?