해당 내용은 Do it! 자료구조와 함께 배우는 알고리즘 입문 C 언어 편 (전면 개정판)을 기반으로 작성되었습니다. 2-1장 기본 자료구조 - 구조체 : 구조체(1/2) 구조체 - 임의의 데이터(요소)를 다시 조합하여 다시 만드는 자료구조 - 각 개인의 데이터를 같은 인덱스 요소에 저장하는 것 - 구조체 선언을 함과 동시에 typedef 이름을 부여한다. 이때 태그 이름은 부여하지 않는다. int형(x), long형(y), double형(z)의 3개의 구조체가 모여있는 멤버 // 형식: 객체이름.멤버이름 (객체 a 안의 멤버 x) a.x
해당 내용은 Do it! 자료구조와 함께 배우는 알고리즘 입문 C 언어 편 (전면 개정판)을 기반으로 작성되었습니다. 2-1장 기본 자료구조 - 배열 : 증가 연산자 ++i / i++ (6/10) 전위형 증가 연산자 ++a - ++를 앞에 놓으면 식 전체를 평가하기 전에 피연산자의 값을 증가 - a값이 3일 때, b = ++a를 실행하면 먼저 a가 증가한 값인 4가 된다. - 그런 다음 ++a를 평가한 값 4를 b에 대입한다. - 결국 a와 b 둘 다 4가 된다. 후위형 증가 연산자 a++ - ++를 뒤에 놓으면 식 전체를 평가한 후에 피연산자의 값을 증가한다. - a값이 3일 때, b = a++를 실행하면 먼저 a++를 평가한 값 3을 b에 대입한다. - 그런 다음 ++가 수행되어 a는 4가 된다. -..
해당 내용은 Do it! 자료구조와 함께 배우는 알고리즘 입문 C 언어 편 (전면 개정판)을 기반으로 작성되었습니다. 2-1장 기본 자료구조 - 배열 : 기수변환 (5/10) 기수와 서수는? 기수란 - 수를 나타내는 데 기초가 되는 수 - 일, 이, 삼, 사, 오 .... 서수란 - 사물의 순서를 나타내는 수 - 첫째, 둘째, 셋째, 넷째 기수변환 - 정수값을 임의의 기수(cardinal number)로 변환하는 알고리즘 - 10진수 정수를 n진수 정수로 변환하려면 정수를 n으로 나눈 나머지를 구하는 동시에 그 몫에 대해 나눗셈을 반복해야 한다. n 진수란? - n진수는 n을 기수로 하는 수 정수 상수의 n진수 표현 방법 - 정수 상수는 정수 계열의 값을 나타내는 10진수, 8진수, 16진수이다. - 정..
해당 내용은 Do it! 자료구조와 함께 배우는 알고리즘 입문 C 언어 편 (전면 개정판)을 기반으로 작성되었습니다. 2-1장 기본 자료구조 - 배열 : 포인터와 배열 (4/10) 포인터 pointer - 객체 또는 함수를 가르키는 것 int *p; // p는 int형 객체를 가르키는 포인터 double *q; // q는 double형 객체를 가르키는 포인터 포인터의 자료형 - 포인터가 가르키는 곳의 객체의 자료형을 따라 간다. - int*형은 int형 객체를 가르키는 포인터를, double*형은 double형 객체를 가르키는 포인터이다. // n이 int형 객체일 때, p가 n을 가리키도록 함 p = &n; // p에 n의 주소를 대입 *p = 999; - 간접 연산자인 단항 연산자 *를 사용하여 포인..
해당 내용은 Do it! 자료구조와 함께 배우는 알고리즘 입문 C 언어 편 (전면 개정판)을 기반으로 작성되었습니다. 2-1장 기본 자료구조 - 배열 : 메모리 할당, 동적 객체 (3/10) // int형 객체를 동적으로 생성하고 해제 #include #include int main(void){ int* x = calloc(1, sizeof(int)); // int형 포인터에 메모리 할당 if (x == NULL) puts("메모리 할당에 실패했습니다."); else { *x = 57; printf("*x = %d\n", *x); free(x); // int형 포인터에 할당한 메모리 해제 } return 0; } 메모리 확보 함수 : malloc() 메모리 확보 함수 : calloc() - 호출한 cal..