본문 바로가기
반응형

C++59

[C++] 입력받기 C++에서 숫자가 문자를 입력받는 함수는 cin 입니다. 아래와 같이 사용합니다. int a; cin>>a; 아래는 숫자를 입력받고 입력받은 숫자를 출력하는 예시입니다. #include using namespace std; int main() { int a; cin>>a; cout 2022. 8. 26.
[C++ 클래스의 이해] 4. 생성자와 맴버 이니셜라이저의 기능적 차이 생성자와 맴버 이니셜라이저는 객체의 맴버변수를 초기화하기 위해 사용됩니다. 어떤 클래스에서 volume 이라는 맴버변수를 초기화하는 상황을 가정하였습니다. 생성자와 맴버이니셜라이저 각각의 사용 예시는 아래와 같습니다. 생성자 tp(const float vol) //생성자 내용 { volume=vol; } 맴버 이니셜라이저 tp(const float vol) :volume(vol) //맴버 이니셜라이저 { } 생성자와 맴버이니셜라이저의 차이 생성자는 volume 이라는 변수를 선언한 뒤에 값을 입력합니다. 아래 과정이 수행되는 것입니다. int volume; volume=vol; 따라서 맴버변수인 volume 을 선언할 때 const 가 불가능합니다. 반면 맴버 이니셜라이저는 변수 선언과 동시에 초기화가 .. 2022. 8. 23.
[C++ 클래스의 이해] 3. 맴버 이니셜라이저란 무엇인가 클래스에서 객체를 생성할 때 맴버변수들의 초기화를 해야합니다. 지금까지 배운 방법은 두가지가 있습니다. - 초기화 함수를 정의 - 생성자 이용 초기화 함수는 클래스 안에 외부에서 접근가능한 맴버함수를 정의하는 것입니다. 함수 내용은 맴버 변수의 초기화입니다. 생성자 선언 방법은 함수와 유사한데 객체 선언과 초기화를 동시에 해준다는 이점이 있습니다. 오늘은 맴버 변수를 초기화하는 세번째 방법인 '맴버 이니셜라이저'를 배워봅시다. 맴버 이니셜라이저는 생성자와 함께 사용되므로, 지난시간에 만들었던 코드를 가져옵시다. 생성자를 이용하여 객체를 초기화하는 코드입니다. #include #include //strcpy 사용 using namespace std; class tp { private: char compan.. 2022. 8. 23.
[C++ 클래스의 이해] 2. 생성자란 무엇인가 생성자는 클래스에서 객체를 생성할 때 초기화를 편하게 해주는 함수입니다. 생성자를 이용하면 객체 생성과 초기화를 동시에 할 수 있습니다. 객체 생성 시 맴버변수들은 private 으로 분류하는 것이 일반적입니다. private 맴버들은 외부에서 접근하는 것이 불가능하기 때문에 값을 초기화 해주는 함수를 정의해야 했습니다. 상황을 이해하기 위해 예시를 하나 가져옵시다. 아래는 지난시간에 사용한 예시입니다. 이해를 돕는데 불필요한 코드는 생략했습니다. 주석 표시 부분을 보시면 됩니다. class tp { private: char company[20]; char prod_name[20]; float volume; public: void SetValue(const char * cp,const char* pr_n.. 2022. 8. 19.
[C++ 클래스의 이해] 1. 클래스와 객체지향이란 무엇인가 클래스가 무엇인지 이해하려면 원시 형태의 구조체 부터 시작해야 합니다. 사용자의 필요에 의해 구조체가 고안되고 발전한 역사적 맥락을 알아야 클래스를 제대로 이해할 수 있습니다. 모든 언어의 빅 히스토리를 다루려는 것은 아닙니다. 구조체와 클래스의 한정하여 설명할 것입니다. 백 퍼센트 정확한 역사적 맥락을 알 수 없고 제 지식의 한계도 있기 때문에 어느정도 상상력을 가미하여 흐름을 구성하였습니다. 구조체의 탄생 단일 자료를 관리할 때는 변수를 사용합니다. 한 사람의 키 정보를 입력하고 싶다면 변수 하나로 족합니다. float A_height=187.5; 개발자들은 같은 타입의 자료들을 관리하기 위해 배열이라는 것을 고안했습니다. 다섯 사람의 키는 아래와 같이 선언합니다. 각각을 변수로 선언하는 것 보다 훨.. 2022. 8. 19.
[C++] 클래스와 구조체의 차이 클래스와 구조체의 차이를 설명하기 위해 구조체를 하나 선언하겠습니다. struct person { char sex; int age; char job[20]; float height; float weight; }; 헬스장 회원정보를 저장하는 구조체입니다. 회원 한명의 구조체변수를 선언하는 방법은 아래와 같습니다. 이를 '초기화'라고 부릅니다. 초기 값을 입력했기 때문입니다. int main() { struct person kim={'M',28,"teacher",178,68}; }; 클래스는 구조체에서 몇가지 기능을 추가한 것이라고 할 수 있습니다. 선언방법은 아래와 같이 동일합니다. struct 대신 class 라고 적으면 됩니다. class person { char sex; int age; char jo.. 2022. 8. 18.
[C++] 구조체 안에 함수 정의하기 구조체 만들기 예제로 사용할 구조체를 하나 만들어봅시다. 헬스클럽 회원 구조체입니다. 회원 한명의 구조체 변수도 선언해주었습니다. #include using namespace std; struct person { char name[20]; char sex; int age; char job[20]; float height; float weight; }; int main() { person id1={"김지영",'F',23,"학생",164,56}; } 구조체 안에 함수 정의하기 구조체 안에 함수를 하나 추가할 것입니다. 체질량지수(BMI) 를 계산하는 함수입니다. 체질량지수는 자신의 몸무게(kg)를 키의 제곱(m)으로 나눈 값입니다. 구조체 안에 함수를 선언하면 아래와 같습니다. 코드에서 구조체 부분만 적었습.. 2022. 8. 18.
[C++] 메모리 구조 (코드, 데이터, 힙, 스택) 먼저 알기 : 저장장치 컴퓨터의 저장장치에는 램과 하드디스크가 있습니다. 컴퓨터에서 램과 하드디스크 용량을 확인하는 방법을 먼저 알아봅시다. 먼저 램입니다. 내컴퓨터에서 우클릭을 하고 속성에 들어가보면 '설치된 RAM' 옆에 값이 써있을겁니다. 저는 16GB라고 써있네요. 이 값이 램의 용량입니다. 하드디스크 용량은 내컴퓨터를 더블클릭해서 열면 알 수 있습니다. 장치 및 드라이브에 표시된 드라이브들이 하드디스크입니다. 램과 하드디스크를 구분하는 아주 좋은 예가 있습니다. 책상과 캐비넷 예시입니다. 램은 책상이고 하드디스크는 케비넷입니다. 케비넷에서 필요한걸 꺼내서 책상에 올려놓고 작업하듯, 하드디스크에서 원하는 프로그램을 램에 올려놓고 작업하게 됩니다. 책상이 클 수록 이것저것 더 많이 올려놓고 작업 할.. 2022. 8. 17.
[C++] 참조자가 함수의 매개변수인 경우 (call-by-reference) 함수를 호출하는 두가지 방식은 아래와 같습니다. Call-by-value Call-by-reference Call-by-value 는 입력된 변수의 값만 복사하여 매개변수에 저장하는 방식입니다. Call-by-reference 는 입력된 변수의 주소값을 전달받아, 함수 밖에 선언된 변수를 조작할 수 있게 합니다. Call-by-reference 는 아래와 같이 포인터를 이용하여 매개변수를 정의합니다. int myfun(int* var1) { 함수내용 } 참조자를 이용하여 동일한 기능 구현이 가능합니다. 함수를 아래와 같이 선언하여도 위와 동일한 의미를 갖습니다. int myfun(int &var1) { 함수내용 } 참조자를 함수의 매개변수로 사용하여 함수에 변수를 입력하면 변수의 값을 변경하는 함수를 만.. 2022. 8. 17.
[C++] 포인터 변수와 const 포인터 변수에도 const 선언을 하여 상수로 만들 수 있습니다. 이번 글의 목적은 아래 네가지 선언을 구분하는 것입니다. 1) const int a=3; 2) int a=3; const int* pa=&a 3) int a=3; int* const pa=&a 4) int a=3; const int* const pa=&a 1번은 a라는 변수를 변경이 불가능하도록 만든 것입니다. a=5 등 a에 다른 값을 대입할 경우 에러가 발생합니다. 2번은 int* pa 앞에 const가 붙어 있습니다. pa를 상수화 한 것은 아니고 *pa 를 상수화 한 것입니다. 따라서 *pa=5 등 *pa 에 다른 값을 대입할 경우 에러가 발생합니다. 3번은 pa 앞에 const가 붙어 있습니다. pa를 상수화한 것이고, pa에는 .. 2022. 8. 17.
[C++] 상수란 무엇인가 상수는 변경이 불가능한 데이터입니다. 변수는 변경이 가능한 데이터였습니다. 변수 : 변경 가능 상수 : 변경 불가 상수의 특징은 메모리 공간이 할당되긴 하나, 메모리 공간의 이름이 따로 없다는 것입니다. 무슨말인지 이해하기 위해 예를 하나 들겠습니다. 아래와 같이 선언해봅시다. int a=3; 위 코드를 실행하면 벌어지는 일을 살펴봅시다. 1) 3이라는 상수가 메모리에 저장 2) 4바이트 만큼의 메모리 공간 확보 후 a라는 이름 붙임 3) 2에서 확보한 공간에 3저장 위 단계의 1번에서 3이라는 상수를 일단 메모리 공간에 저장해야합니다. 이때 저장되는 메모리공간에는 이름이 따로 지정되지 않습니다. 이름이 없는 상수를 리터럴이라고 부릅니다. 이름이 있는 상수 위에서 분명 상수는 이름이 따로 없다고 했는데요.. 2022. 8. 17.
[C++] 구조체 배열이란 무엇인가 아래와 같은 구조체가 있다고 합시다. struct person { char name[20]; char sex; int age; char job[20]; float height; float weight; }; 헬스장 회원의 개인 정보를 담기 위해 만든 구조체입니다. 숫자나 문자를 하나씩 변수에 담아 사용할 때보다는 훨씬 편합니다. 하지만 회원이 수백명인 경우에 구조체를 수백개 선언하는 것이 힘이 듭니다. 또한 회원들을 몇개의 그룹으로 묶어서 관리하고 싶습니다. 이러한 기능을 구현할 방법이 없을까라는 고민에서 구조체 배열이 고안되었습니다. 구조체 배열 정의하기 구조체를 배열형태로 정의하면 수백개의 구조체도 하나의 선언으로 만들어낼 수 있습니다. 회원 세명의 구조체를 선언하면 아래와 같습니다. struct p.. 2022. 8. 17.
[C++] 구조체란 무엇인가 구조체가 필요한 이유 문자형과 숫자형 자료형만 있는 상황을 떠올려봅시다. 변수에는 문자 하나 또는 숫자 하나만 입력이 가능합니다. 10명의 키 데이터를 입력하고 싶다고 합시다. 숫자형 자료형만 있다면 변수 10개를 선언해야 합니다. 이와 같이 비슷한 자료를 편하게 저장하기 위해 만든 자료구조가 '배열'입니다. 배열을 이용하면 아래와 같이 10명의 키를 쉽게 입력할 수 있습니다. int height[10]={187,167,176,...}; 만약 서로 다른 형태의 자료를 묶어서 관리하고 싶은 경우는 어떻게 해야 할까요? 예를 들면 각 사람 별로 성별, 나이, 직업, 키, 몸무게를 묶어서 관리하고 싶은 것입니다. 이런 상황을 위해 만들어진 자료구조가 구조체입니다. 구조체 정의하기 구조체는 일종의 서식이기 때문.. 2022. 8. 16.
[C++] 함수의 인자로 배열을 입력하는 법 배열의 이름에는 배열의 주소가 저장되어 있습니다. 더 정확이 말하면 배열 첫 원소의 주소 입니다. 따라서 배열 이름은 포인터입니다. 함수에서 배열을 입력받으려면 매개변수를 포인터형으로 선언하면 됩니다. 배열의 이름을 입력하면, 배열의 첫번째 원소를 반환하는 함수는 아래와 같습니다. int my_fun(int* arr) { return arr[0]; } int* arr 을 보면 매개변수를 포인터형 변수로 선언한 것을 알 수 있습니다. 실제로 함수를 사용해봅시다. #include using namespace std; int my_fun(int* arr) { return arr[0]; } int main() { int arr[3]={10,20,30}; printf("%d",my_fun(arr)); } //출력.. 2022. 8. 16.
[C++] 함수의 인자전달 방식 함수의 인자전달 방식을 이해하기 위해 문제를 하나 풀어봅시다. 아래 코드의 출력 결과는 얼마일까요? #include using namespace std; void my_fun(int arg1) { int* B=&arg1; *B=3; } int main() { int A=5; my_fun(A); printf("%d",A); } 출력 결과는 얼마일까요? 5입니다. arg1 자리에 A가 입력될 때, A라는 변수의 값만 복사되어 입력됩니다. arg1=5 가 되는 것입니다. B는 arg1의 포인터이므로 *B에 3을 입력하면 agr1이 3으로 수정될 뿐이지 A가 바뀌지는 않습니다. 2022. 8. 16.
[C++] 함수의 값으로 주소를 입력받는 방법 함수에 입력값으로 변수이름을 입력하고 연산을 수행하여도 변수 자체의 값을 바꿀 수는 없습니다. 변수로 부터 값만 전달 받고, 전달받은 값을 이용하여 연산을 하기 때문입니다. 그러나 함수의 입력값으로 변수이름이 아니라 주소를 입력받으면, 함수에서 변수에 직접 접근이 가능해집니다. 먼저 함수 입력값으로 변수 이름을 입력받는 예시를 봅시다. #include using namespace std; int my_fun(int var1) { return var1=var-1; } int main() { int A=5; printf("%d \n",my_fun(A)); printf("%d",A); return 0; } //결과 //4 //5 함수에서 1을 빼는 연산을 수행해도 A값 자체가 바뀌지는 않습니다. 함수를 통해 .. 2022. 8. 16.
[C++] 함수선언을 하면 좋은 이유 함수의 선언은 코드 앞부분에서 컴파일러에게 '나는 이런 함수들을 사용할것이다' 라고 알려주는 것입니다. 코드 앞부분에 함수를 선언하지 않고도 얼마든지 코딩을 할 수 있지만 함수의 정의 순서를 고려해야 하는 번거로움이 있습니다. 예를 들어 A라는 함수를 정의하고 B라는 함수를 정의했다고 합시다. 이때 A라는 함수 안에 B라는 함수를 사용할 수가 없습니다. B가 A보다 뒤에 정의 되었기 때문입니다. 이를 해결하려면 A와 B의 자리를 바꿔야합니다. 함수의 선언은 이러한 번거로움을 해결해줍니다. 함수의 선언 방법을 예시를 통해 알아봅시다. 두 수를 더한 값을 출력해주는 함수와 두 수를 곱한값을 출력해주는 함수를 선언하고 main 함수에서 사용하는 예시입니다. #include using namespace std;.. 2022. 8. 16.
[C++] 함수란 무엇인가 함수란? 함수는 입력값들에 대해 어떤 작업을 수행하고 결과값을 반환하는 기능을 하는 것을 말합니다. 입력값 -> 처리 -> 출력값 함수는 반복되는 작업을 편하게 만들어 줄 수 있고 코드를 기능에 따라 여러 부분으로 나눌 수 있게 해줍니다. C++ 소스파일의 기본 구성도 메인함수입니다. main 함수 안에 모든 내용을 다 넣게 되면 코드가 너무 복잡해집니다. 따라서 main 함수 밖에 여러 함수를 정의하여 기능을 나눕니다. 이 함수들을 main 함수에서 적절히 호출하여 사용합니다. C++ 을 함수의 모음이라고 할 수도 있습니다. main 함수와 main 함수 안에서 호출된 다양한 함수들이 C++ 코드를 구성합니다. 함수 선언해보기 C++에서 함수는 아래와 같이 선언합니다. 반환형 함수이름(매개변수1,매개변.. 2022. 8. 12.
[C++] 문자열이란 무엇인가 (문자열은 배열이다) 숫자와 문자입력 복습 C++에서 숫자와 문자는 하나의 메모리 공간에서 정의됩니다. 예를들어 3이라는 숫자를 정수형태로 정의하고 싶으면 아래와 같이 입력하면 됩니다. int a=3; 위와 같이 선언하면 메모리 공간에서 4바이트 만큼의 공간이 확보되고 a라는 이름이 붙습니다. 4바이트의 공간은 32비트이고 각 비트에 0 또는 1이 채워지면 3을 표현합니다. 문자를 입력할 때는 어떨까요. b라는 문자를 아래와 같이 입력했다고 합시다. char mychar='c'; char은 1바이트 공간을 차지하므로 메모리 공간에 1바이트 만큼의 공간이 확보되고 mychar 이라는 이름이 붙습니다. 1바이트는 8비트이므로 8비트 공간을 0 또는 1로 채워야 하는데요. c는 문자입니다. 문자를 숫자로 어떻게 나타낼까요. 컴퓨터.. 2022. 8. 12.
[C++] 배열 이름으로 인덱싱이 가능하다는 것의 의미 C++에서는 배열의 이름 뒤에 [인덱스] 를 붙이는 것으로 배열 원소에 접근할 수 있습니다. 예를 들어 아래와 같은 배열이 있다고 합시다. int ar[3]={1,2,3}; 각 원소에 접근하는 방법은 아래와 같습니다. 첫 번째 원소 ar[0] 두 번째 원소 ar[1] 세 번째 원소 ar[2] 이 부분에서 한가지 질문을 던져봅시다. "배열 이름 ar은 포인터이다. 포인터에 인덱싱이 가능하다는 말인가?" 대답은 yes 입니다. 배열의 이름 뿐만 아니라, 배열을 가리키는 포인터는 인덱싱이 가능합니다. 위에서 선언한 배열 ar을 가리키는 포인터변수를 하나 선언해봅시다. int* par=ar; par 에는 배열 ar의 주소가 저장됩니다. 이제 par은 ar과 같은 역할을 합니다. 아래 두 코드의 출력값이 같습니다.. 2022. 8. 12.
[C++] 배열의 원소를 포인터로 접근하기 ar[i]=*(ar+i) 배열의 원소에 접근하여 값을 변경하는 등의 행위를 포인터를 이용하여 수행하는 방법을 알아봅시다. 배열을 하나 정의합시다. int ar[3]={1,2,3}; 배열의 첫번째 원소에 접근하는 방법은 두 가지가 있습니다. 하나는 배열의 인덱싱을 이용하는 방식입니다. 아래와 같습니다. ar[0] 다른 하나는 포인터를 이용하는 방식입니다. 아래와 같습니다. *ar 아래 코드를 출력해보면 결과가 1로 동일합니다. cout 2022. 8. 12.
[C++] 포인터에서 * 연산자의 두 가지 사용법 *연산자는 두가지 경우에 다른 의미로 사용되기 때문에 많은 분들이 헷갈려 합니다. 오늘은 *연산자의 사용방법을 정리해봅시다. 포인터 변수 p를 하나 정의합시다. int a=3; int* p=&a; p라는 포인터에는 a의 주소값이 저장됩니다. 위 코드에서 *연산자는 포인터 변수를 선언할 때 사용되었습니다. *p 라는 변수가 선언된 것이 아니라 (int*) 라는 자료형인 p라는 변수가 선언된 것입니다. p는 int형 포인터상수입니다. 상수라는 이름이 붙은 이유는 변형이 불가능하기 때문입니다. *는 아래와 같은 상황에서도 사용됩니다. *p=5; *p는 p가 가리키는 주소에 입력된 값을 의미합니다. a에 입력된 값인 5입니다. 정리해봅시다. *연산자는 두가지 역할로 사용됩니다. 1) 자료형 뒤에 붙어서 포인터변.. 2022. 8. 12.
[C++] 배열이란 무엇인가 배열은 자료형을 담는 자료구조입니다. 쉽게 이해하려면 표를 떠올리시면 됩니다. 자료를 표로 정리해 놓으면 한눈에 보기 좋은 것처럼 자료를 배열 형태로 저장해 놓으면 관리가 편합니다. 2차원 배열이 표와 비슷하며 2차원 외에도 모든 차원의 배열이 정의될 수 있습니다. 코딩에서 등장하는 모든 것은 필요에 의해 정의된 것입니다. 배열이 없는 것보다 있는 것이 편리하기 때문에 배열을 정의해서 사용합니다. 배열 정의하는 방법 배열은 아래와 같이 정의합니다. 자료형 배열이름[원소개수] = {원소1,원소2,...}; 원소가 1,2,3인 배열 a를 정의하면 아래와 같습니다. int a[3]={1,2,3}; 배열에서 이름이 갖는 의미 위에서 정의한 배열을 한번 출력 해볼까요? 아마 아래와 같이 출력하려고 할 것입니다. .. 2022. 8. 12.
[C++] 참조자란 무엇인가 참조자는 어떤 변수의 메모리 공간에 붙은 또 다른 이름입니다. 쉽게 말하면 같은 대상을 여러 이름으로 부르고 싶은 경우에 사용합니다. 직접 코딩하며 이해해봅시다. int a=3; int &a2 = a; a2는 a와 같은 메모리 공간을 갖게 됩니다. 변수 a에 해당되는 메모리 공간에 a2라는 이름이 하나 더 생긴 것입니다. 아래와 같이 출력하면 둘 다 2이 출력됩니다. cout 2022. 8. 12.
[C++] 포인터에서 덧셈 뺄셈 연산 포인터 변수를 하나 선언해봅시다. int a=3; int *p=&a; p에는 a의 주소가 저장됩니다. 출력하면 아래와 같습니다. 0x7ffdc969234c 만약 p에 1을 더하면 어떤 결과가 발생할까요. 1,2,3을 더하고 출력하면 결과는 아래와 같습니다. 0x7ffc9f9d2a4c 0x7ffc9f9d2a50 0x7ffc9f9d2a54 0x7ffc9f9d2a58 위 값은 16진수입니다. 0x 는 16진수라는 의미입니다. 맨 뒷자리만 보면 주소가 입력된 포인터변수에 1을 더할 때마다 c, 0, 4, 8 로 변하고 있습니다. 16진수에서 c는 12입니다. 12에 4를 더하면 16이 되고 자릿수가 변하므로 첫자리는 0이 됩니다. c,0,4,8은 4씩 증가하는 것을 알 수 있습니다. int로 선언된 포인터변수에.. 2022. 8. 11.
[C++] 변수의 주소는 몇 진수일까 포인터를 이용하여 변수의 주소를 하나 출력해봅시다. #include using namespace std; int main() { int a=3; int *p=&a; cout 2022. 8. 11.
[C++] 포인터에서 p와 *p의 차이 포인터 변수를 하나 선언해봅시다. int a=3; int *p=&a; p에는 a의 주소가 저장됩니다. int *p 에서 *p가 어떤 의미를 갖는 것은 아닙니다. int* 가 의미를 갖습니다. 포인터 자료형이라는 뜻입니다. int* p라고 쓰는 것이 의미를 더 잘 표현합니다. *p 가 단독으로 사용되는 경우도 있습니다. 이때는 p가 가리키는 변수가 됩니다. *p 는 a입니다. 직접 출력하여 확인해봅시다. #include using namespace std; int main() { int a=3; int *p=&a; cout 2022. 8. 11.
[C++] 포인터란 무엇인가 포인터는 변수입니다. 하지만 우리가 일반적으로 알고 있는 변수와는 다릅니다. 이러한 이유 때문에 포인터에 익숙해 지는데 시간이 좀 필요합니다. 지금부터 우리에게 익숙한 변수에서 출발하여 포인터가 무엇인지 배워봅시다. 우리가 일반적으로 알고 있는 변수는 숫자나 문자를 입력할 수 있는 어떤 공간의 이름입니다. 각 변수는 메모리 공간을 갖습니다. 정수형 변수를 선언하고 값을 입력하는 아래 코드를 봅시다. int a=3; 위와 같이 선언할 경우 메모리 공간에 int 자료형의 크기인 4바이트가 할당됩니다. 할당된 4바이트 공간에 3이 입력됩니다. 메모리 공간에서 4바이트 만큼을 정한 뒤 a라는 이름을 붙인 것과 같습니다. 이후 a라는 변수를 사용하게 되는데요. 우리가 a를 사용할 때마다 컴퓨터는 a라는 이름이 붙.. 2022. 8. 11.
[C++] goto 문 (가리키는 곳으로 가시오) goto 문은 게임에서 '포탈'과 비슷합니다. 포탈 두개를 열어놓고 한 포탈에서 다른 포탈로 이동합니다. 예를들어 아래 코드를 실행하면 hello 는 출력되지 않고 world 만 출력됩니다. goto 문을 만나는 순간 portal1 로 이동하기 때문입니다. #include using namespace std; int main() { goto portal1; cout 2022. 8. 11.
[C++] continue 문 (다음번 순서로 넘어가시오) 반복문에서 continue 문을 만나면 다음번 순서로 넘어갑니다. for 문 안에 if문이 들어있는 경우를 예로 들어봅시다. #include using namespace std; int main() { for(int i=1; i 2022. 8. 11.
반응형