본문 바로가기

c언어

문자열 초기화 char a = "abc"; a[0] = 'b'; 더보기
c언어 프로젝트 (v 0.5) 더보기
c언어 공부 프로젝트 (ver 0.3) 더보기
c언어 공부 프로젝트 (ver 0.1) 순서도 첨가 더보기
연산자 (c언어) 논리 연산자 &&, || (5 2) || (3 == 2) ||연산자의 앞 논리 값(5 >2)을 평가하여 1이면, 이 연산자는 더 이상 뒤의 논리 값(3 == 2)을 평가하지 않고, 논리 연산 &&의 평가 결과를 1로 결정 조건 연산자 exp1 ? exp2 : exp3 exp1이 0이 아닌 값(참)이면 exp2이 선택됨 exp1이 0(거짓)이면 exp3이 선택됨 비트 논리 연산자 (비트 단위로 논리연산을 수행) &(and), |(or), ^(xor), ~(not) 이동 연산자 (오른쪽 이동 연산자) 은.. 더보기
공용체 (c언어) 공용체 : 서로 다른 자료형을 동일한 저장 공간에 이용하는 자료형 union data { char ch; int cht; double real; } data1, *pdata; typedef union data uniondata; 변수 data1 : char(1바이트) int(4바이트) double(8바이트) 공용처의 초기값은 첫 멤버의 초기 값으로만 저장이 가능, 다른 동일한 변수의 값으로 초기화가능 uniondata data2 = {'A'}; uniondata data3 = data2; 접근 연산자'.' 이용, 포인터인 경우는 연산자'->'을 이용 pdata = &data2; printf("%2c %2c\n", pdata->ch, (*pdata).ch); printf("%2c %2c\n", data2... 더보기
구조체 (c언어) 구조체 모습 struct 구조체 태그 이름{ 자료형1 변수명1; 자료형2 변수명2; 자료형3 변수명3; }; 구조체 변수 선언 struck book { char title[50]; char author[50]; char publish[50]; } int main(void) { struck book mybook; } 구조체 태그이름을 사용하지 않으면 구조체의 변소를 선언할 때마다 구조체의 전체 구조를 다시 기술해야 됨 struct { char title[50]; char author[50]; char publish[50]; } mybook; struct { char title[50]; char author[50]; char publish[50]; } yourbook; typedef를 이용한 구조체 정의 1.. 더보기
메모리 관련 함수 (c언어) 메모리 함수 원형 기능 메모리 할당 (기본값 없이) void* malloc(size_t) 인자만큼의 메모리 할당 후 기본 주소 반환 메모리 할당 (기본값 0으로) void* calloc(size_t, size_t) 뒤 인자만큼의 메모리 크기로 앞 인자 수 만큼 할당 후 기본 주소 반환 기존 메모리 변경 (이전값 그대로) void* realloc(void *, size_t) 앞 인자의 메모리를 뒤 인자 크기로 변경 후, 기본 주소 반환 메모리 해제 void free(void *) 인자를 기본 주소로 갖는 메모리 해제 더보기