전체 글(170)
-
NULL GUARD? 예외처리!
42에서 불리는 NULL GUARD라는 것이 있다. 이는 NULL이 발생할 상황을 예외처리 해주는 것이다. char *str; // 초기화되지 않은 포인터 if (str == NULL) { //포인터가 NULL을 가리킴 } 이와 같이 초기화하지 않은 포인터는 'NULL'을 가리킨다. if (!(str = (char *)buf)) return (NULL); 이 조건은 str에 (char *)buf의 값을 대입한 후에 str이 NULL인지를 확인한다. 즉, str에 (char *)buf의 값을 대입했을 때 실패하면(즉, str이 NULL인 경우) 조건은 참이 됩니다. 이렇게 예상치 못한 경우에 NULL이 발생할 수 있는 상황을 예외처리 해준다.
2024.02.27 -
배열과 포인터
C언어에서 배열과 포인터는 많은 경우에 호환된다. 특히 함수의 매개변수로 배열이나 포인터를 전달할 때는 호환성이 있어서 배열을 포인터로 전달할 수 있다. 이것은 C언어에서 배열 이름은 해당 배열의 첫 번째 요소를 가리키는 포인터로 해석되기 때문이다. 따라서 함수에서 'char *' 타입의 매개변수를 요구하는 경우에는 실제로 배열을 넘겨도 문제가 발생하지 않는다.
2024.02.27 -
C언어
c언어에서는 0이 아닌 모든 값이 참(true)으로 간주됩니다.
2023.12.06 -
C언어
출력 방법 %d 10진수로 출력 %o 8진수로 출력 %x 16진수로 출력 %f 실수형 변수로 출력 %.2f 소수점 이하 둘째 자리 까지 출력 %.100f 소수점 이하 100번째 자리 까지 출력 %5d 되도록 숫자의 자리수를 5자리로 맞춰라 => ex) 123 일 경우 ex) 123으로 칸 수를 5자리 쓰듯이 출력한다. => ex) 123456 일 경우 ex) 123456으로 출력한다. 변수의 이름 숫자가 앞에 위치하면 안됩니다. 변수명은 오직 영어, 숫자, _로 만 구성되어 있어야 합니다. 변수의 이름에 띄어쓰기가 있으면 안됩니다. 변수의 이름이 C 언어 예약어이면 안됩니다.
2023.11.30 -
C언어
void 함수 출력 값이 필요 없는 함수에 사용 vim 단축키 모음 c언어를 사용하여 컴파일하려고 하면 파일형태를 .c 를 사용하여 저장하고 해당 파일을 gcc 파일명.c를 실행하여 a.out 파일이 생기면 ./a.out을 실행해서 해당 내용을 확인할 수 있다!
2023.11.30 -
Linux
기본 명령어 -head head 명령어는 text 기반의 내용을 보여준다. 그러나 binary로 된 파일의 내용도 실행되기 때문에 파일이 깨져서 문자로 출력될 수 있으니 binary파일에는 사용을 지양하는 것이 좋다. grep -o 옵션으로 찾은 문자열만 나열 grep -E 대상 문자열이 정규표현식을 사용할 수 있도록 함.
2023.11.29