본문 바로가기
C++

C++ 프로그래밍 2주차

by asd135 2023. 9. 13.
728x90

c++ 출력함수

#include <iostream> 

int main()

{
    std::cout << "Hello World!\n";
}

 

c, c++ 출력함수 차이

#include <iostream> // c++

#include <stdio.h> // c

int main()

{
    printf("Hello\n"); // c
    std::cout << "Hello World!\n"; // c++
}

 

std 생략 방법

방법1:

#include <iostream>

using namespace std; // 잘 쓰지 않음

int main()

{
    cout << "Hello World!\n";
}

 

방법2:

#include <iostream>

using std::cout; // 더 좋은 방법

int main()

{
    cout << "Hello World!\n";
}

 

입출력 예제

#include <iostream> 
using std::cout;
using std::cin;
int main()
{
	int input;
	cout << "나이를 입력하세요.";
	cin >> input;
	cout <<  "당신의 나이는 " << input << "살 입니다.";
}​
#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
	int a, b, c;
	a = 100;
	b = 200;
	c = a + b;
	printf("%d, %d, %d\n", a, b, c); // C, 함수
	cout << a <<',' << b << ',' << c;; // C++ 객체
}

C스타일 C++스타일로 변형

//#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
//#include <stdio.h>
using std::cout;
using std::cin;
int main()
{
	int num;
//printf("숫자 하나를 입력하세요=");
	cout << "숫자 하나를 입력하세요=";
//scanf("%d", &num);
	cin >> num;
//printf("입력받은 수는 %d입니다.\n" , num);
	cout << "입력받은 수는 " << num << "입니다.";
}

 

식별자/상수/자료형/변수/함수 예제

#include <iostream>
using std::cout;
using std::endl;
int main()
{
	int num1, num2; // 변수 선언문, 실행문 보다 먼저씀
	num1 = 100; // 대문자와 소문자는 다른 변수로 인신
	num2 = -300; // 변수에 상수 대입
	cout << "두 수의 합은" << num1 + num2 << "입니다." << endl;
}

 

프로그래밍 언어에서 식별자(identifier)를 만드는 데는 일반적으로 다음과 같은 규칙이 적용됩니다:

  1. 문자로 시작: 대부분의 프로그래밍 언어에서 식별자는 알파벳 문자(대소문자 모두 가능), 밑줄(_)로 시작해야 합니다. 숫자로 시작하는 식별자는 허용되지 않습니다.
  2. 알파벳, 숫자, 밑줄 사용: 식별자 내부에는 알파벳 문자, 숫자, 밑줄을 사용할 수 있습니다.
  3. 공백 불가능: 식별자 내에 공백이 포함되면 안 됩니다.
  4. 예약어 사용 불가능: 프로그래밍 언어의 예약어(reserved words)나 키워드(keywords)를 식별자로 사용할 수 없습니다. 예를 들어 if, for, while 등은 C++, Java, Python 등 많은 언어에서 예약어로 취급되므로 이들을 변수 이름으로 사용하면 안 됩니다.
  5. 대소문자 구분: 대부분의 프로그래밍 언어는 대소문자를 구분합니다. 따라서 myVariable, myvariable, MyVariable은 서로 다른 식별자입니다.
  6. 특수 문자 제한: 대부분의 특수 문자($, # 등)는 식별자에 포함시킬 수 없습니다 (단, _ 제외).

 

자동 형 변환을 지원하는 프로그래밍 언어

  1. JavaScript: JavaScript는 동적 타입 언어로, 변수의 데이터 타입이 실행 시점에 결정됩니다. 또한 자동 형변환이 일반적으로 발생합니다. 예를 들어 숫자와 문자열을 더하면 JavaScript는 숫자를 문자열로 자동 변환하여 문자열 연결을 수행합니다.
  2. Python: Python도 동적 타입 언어로서 자동 형변환이 일부 상황에서 발생합니다. 예를 들어 정수와 부동소수점 수를 더하면 Python은 정수를 부동소수점 수로 변환합니다.
  3. Java/C++/C#: 이들 정적 타입 언어도 일부 상황에서 암시적 형변환을 지원합니다. 주로 작은 데이터 타입에서 큰 데이터 타입으로의 변환에 해당되며, 정보 손실이 없는 경우에 한해 허용됩니다.
  4. PHP: PHP도 동적 타입 언어로서 여러 상황에서 자동 형변환이 발생합니다.
  5. Swift/Kotlin: 이들 모던 프로그래밍 언어 역시 특정 조건 하에 암시적 형변환을 지원합니다

 

자동 형 변환 예제

#include <iostream>
using std::cout;
int main()
{
	cout << 10 / 4<< " "<< 10.0 / 4 <<" " << 10 / 4.0 <<" " << 10.0 / 4.0;
}

cast 연산자 예제

#include <iostream>
using std::cout;
int main(void)
{
	cout << (double)10 / 4 <<" " << 10 / (double)4;
	return 0;
}

증가, 감소 연산자 예제

#include <stdio.h>
int main(void)
{
	int a = 10, b = 10, c = 20, d = 20;
	int ap, bp, cm, dm;
	ap = ++a; // a=a+1; ap=a; ap=11, a=11 // 값을 증가시킨 후 대입
	printf("a=%d, ap=%d\n", a, ap);
	bp = b++; // bp=b; b=b+1; bp=10, b=11 // 대입 후 값을 증가
	printf("b=%d, bp=%d\n", b, bp);
	cm = --c; // c=c-1; cm=c; cm=19, c=19 // 값을 감소시킨 후 대입
	printf("c=%d, cm=%d\n", c, cm);
	dm = d--; // dm=d; d=d-1; dm=20, d=19 // 대입 후 값을 감소
	printf("d=%d, dm=%d\n", d, dm);
	printf("%d\n", dm++);
	printf("%d\n", ++dm);
	return 0;
}

 

이 소스들은 한성현 교수님의 소스를 일부 편집, 수정하여 만들었습니다.

 

'C++' 카테고리의 다른 글

C++ 프로그래밍 9주차  (0) 2023.11.01
C++ 프로그래밍 6주차  (1) 2023.10.18
C++ 프로그래밍 5주차  (0) 2023.10.11
C++ 프로그래밍 4주차  (0) 2023.09.27
C++ 프로그래밍 3주차  (0) 2023.09.20