본문 바로가기

Programming60

PF_INET와 AF_INET 소켓 프로그래밍을 할 때 socket()함수에서는 PF_INET으로 ipv4 프로토콜을 표현하고 struct sockaddr_in 의 sin_family에는 AF_INET으로 ipv4를 표현했었습니다. 그런데 PF_INET와 AF_INET의 차이는 무엇일까요? socket(PF_INET, ~~, ~~); struct sockaddr_in의 sin_family멤버에 = AF_INET 리눅스에서 아래와 같은 프로그램을 만들어서 실행해보면 #include #include int main() { printf("PF_INET : %d \n", PF_INET); printf("AF_INET : %d \n", AF_INET); } PF_INET와 AF_INET 둘다 2라는 상수를 가지는 것을 확인 할 수 있습니다. .. 2012. 4. 30.
헤더파일 중복 방지( inclusion guard / #pragma once ) 대형 소프트웨어 개발 프로젝드들에서 소스파일이나 헤더파일에서 헤더 파일을 중복해서 포함시키는 경우 컴파일 에러가 발생하게 됩니다. 이 문제를 해결하기 위한 방법으로 1. inclusion guard 2. #pragma once 를 사용할 수 있습니다. 1. inclusion guard #ifndef AAA_H #define AAA_H ..(헤더 파일 내용).. #endif 만약 AAA가 정의되어 있지않으면(현재 헤더파일이 한번도 포함되지 않았을 경우) AAA를 정의하고(헤더파일이 한번 포함됨을 정의) 헤더 파일을 포함하게 됩니다. 2. #pragma once #pragma once ...(헤더 파일 내용)... #pragma once는 한 번만 include 하라는 옵션입니다. 첫 번째 방법은 한번 in.. 2012. 4. 23.
cin.fail cin.clear cin.ignore cin.fail() -> i/o 에러가 발생하면 true cin.clear() -> cin객체의 내부 상태 플래그 초기화 cin.ignore(무시 문자 최대길이, 종료 문자) -> 현재 버퍼안에 있는 내용 무시 - cin.fail()이 true인 경우 - 1) #include using namespace std; void main() { int test; cout > test; cout 2012. 4. 20.
c++ 파일 입출력 (fstream) #include 파일에 출력하기 - ofstream ofstream 변수선언; ex) ofstream val("filename"); ---------- or ---------- ofstream val; val.open("filename") val buf; //> Extract formatted data (public member function ) gcount Get number of characters extracted by last unformatted input operation (public member function) get Get unformatted data from stream (public member function ) getline Get line from stream (public.. 2012. 4. 7.