728x90
반응형

프로그래밍 72

for each (범위 기반 반복)

2023.02.16 최초 작성 C++는 기존의 횟수 기반의 반복인 for 문 외에 for each (범위 기반 반복)을 지원한다. for 안에서 사용하는 내부 변수는 복제본으로 원본에 영향을 주지 않는다. 만약 원본을 변경하려면 참조형 변수로 사용하여야 한다. #include using namespace std; int main() { int arr1[5] = { 10, 20, 30, 40, 50 }; for (auto a : arr1) { // for each문 (범위 기반 반복) a = 0;// a는 for 안에서만 사용되는 복제본 } for (auto a : arr1) { cout

프로그래밍/C++ 2023.02.16

변수 선언 및 초기화

2023.02.16 최초작성 변수를 선언하며 초기화할 때 대입 연산자를 사용하는 것은 C언어 스타일이며 C++에서는 대입 연산자를 이용하는 방식도 가능하나 괄호를 이용하는 방식이 C++ 스타일이다. C++에서는 변수를 단순한 변수가 아닌 인스턴스(객체)로 관리되는데 int 변수라고 하기보다 int 타입의 인스턴스(객체)라고 표현할 수 있다. 변수 선언 및 초기화하는 방법을 C언어와 C++ 방식을 비교한 것이다. #include using namespace std; int main() { int a = 10; // c 스타일 변수 초기화 int b(20);// c++ 스타일 변수 초기화 auto c(b); // 자료형 자동 할당 a = int(30); // 상수 cout

프로그래밍/C++ 2023.02.16

C언어 동적할당 malloc, calloc, realloc, free

2023.1.19. 최초 작성 필요한 순간에 필요한 크기만큼 메모리를 할당받아 사용하고자 할 때는 동적할당이란 개념이 적용되어 메모리의 힙(heap) 영역에 공간을 할당받는다. 포인터를 활용해 동적할당 된 메모리공간의 주소를 기억하고 접근할 수 있고 동적할당을 위해 malloc, calloc, realloc, free 이렇게 4가지 함수를 사용하는데 stdlib.h 헤더 파일에 포함되어 있다. 아래 코드는 malloc과 calloc 함수를 이용하여 입력된 학생 수에 맞게 동적 할당한 예제이다. #include #include void main() { int n; int* score; printf("(성적입력) 전체 인원 수를 입력하세요. "); scanf("%d", &n); score = (int*)ma..

프로그래밍/C 2023.01.20

C언어 구조체 포인터

2023.1.19. 최초 작성 구조체 포인터는 구조체를 가리키는 포인터로 구조체의 주소를 기억한다. 정수 포인터는 한 개의 정수만을 가리킬 수 있지만 구조체는 사용자가 만든 데이터의 묶음이므로 여러 개의 데이터를 한 번에 가리킬 수 있는 장점이 있다. 아래 코드는 구조체 포인터를 사용한 예제이다. #include #include struct student { char name[10]; int kor; int eng; int math; }; void main() { struct student s1; strcpy(s1.name, "kim"); s1.kor = 100; s1.eng = 80; s1.math = 77; printf("s1의 주소 : %p\n", &s1); printf("s1.name : %s\n..

프로그래밍/C 2023.01.19
728x90
반응형