전체 글(38)
-
Bit Mask
bit mask mask off 특정 비트를 강제로 '0' 으로 만들거나, 유지 하는 연산 (reset) ex) '0'과 &연산을 하는 경우 비트의 값은 무조건 '0' 이되고 '1'과 &연산을 하는 경우 원래 비트 값을 유지한다. mask on 특정 비트를 강제로 '1'로 만들고 나머지는 유지하는 연산 (set) ex) '1' 과 OR 연산을 하는 경우 모든 값을 '1' 로 만들고 '0' 과 OR 연산을 하는 경우 원래 비트 값을 유지한다. 특정 비트를 반전 한다. ex) XOR 연산을 이용하여 '1'을 '0'으로, '0'을 '1'로 반전 시킬 수 있다. - bit mask를 이용하여 데이터의 특정 부분을 얻을 수 있다. ex) unsigned char Data = 0x1234 unsigned char ..
2016.07.06 -
가변 인자 ( 가변 매개변수 )
가변인자 ( 가변 파라미터 ) 헤더 #include #include #include int Sum(int n, ...) { // 고정 인수 1개는 필수 int i; va_list arglist; // va_list 변수명 : 매개변수에 접근하기 위한 포인터 char sum; va_start(arglist, n); // va_list(va_list 변수명, 고정인수 ) 처음 매개변수로 va_list로 선언한 포인터 변수와, 고정인수가 담긴다. for (i=0;i
2016.07.05 -
매개변수 구현 방법 ( Call-by-Value, Call-by-Reference)
함수간에 매개변수를 통한 자료 전달 기법은 구현방법에 따라 크게 3가지 call-by-value, call-by-reference, call-by-name 등으로 구분 할 수 있으며, C, C++ 에서는 Call-by-value, Call-by-Reference의 방법이 있다. 피 호출함수의 매개변수를 형식 매개변수 ( formal parameter) 라 하고, 함수 호출문의 매개변수를 실 매개변수 (actual parameter)라 합니다. 실 매개변수는 변수, 상수, 식 또는 함수가 될 수 있으나., 형식 매개변수는 단일변수 이외의 식이나 상수로는 작성 할 수 없다. void Function1( int a, int b) -> 형식 매개변수 main() { .. int bb; .. Function1( ..
2016.07.05 -
[Ubuntu] 커널 컴파일 관련
커널 버전 확인 $ uname -r // 커널 버전 정보 확인 패키지 설치 sudo apt-get install build-essential libncurses5 libncurses5-dev bin86 kernel-package -y 커널 파일 tar을 이용해서 압축풀기 (www.kernel.org
2016.01.22 -
feof() 파일의 끝 확인
헤더 : stdio.h원형 : int feof( FILE *stream);반환 : 파일의 끝이면 0 이외의 값을, 끝이 아니면 0의 값을 int형 리턴#include int main(void){fp=fopen("/home/jy/.bashrc",rb);for(;!feof(fp);) //파일의 끝을 만날때 까지 루프{ fgets(&buf[Num], 256, fp); Num++;}fclose(fp);}// 파일의 끝이면 종료
2016.01.21 -
fopen()
원형FILE *fopen(const char *filename, const char *mode);-Moder : 읽기 전용으로 열기w :쓰기용으로 파일 만들기, 같은 이름의 파일이 있으면 덮어쓰기r+ : 이미 있는 파일은, 읽기 쓰기용으로 파일 만들기w+ : 읽기/쓰기용으로 파일 만들기, 같은 이름의 파일이 있으면 덮어쓰기a+ : 파일을 열어서 끝 부분에 추가하기. 파일이 없다면 만들어서 내용 추가t : 텍스트 모드로 열기b : 이진 파일 모드로 열기 ex) fopen(file_path,"rb"); 이미 존재하는 이진 파일을 읽기 전용으로 열기fopen(file_path,"rt"); 이미 존재하는 텍스트 파일을 읽기 전용으로 열기 참조 http://mwultong.blogspot.com/2006/08/c..
2016.01.21