C언어 문법 정리

최민수·2023년 9월 13일

자료형은 프로그래밍에서 변수나 상수에 저장되는 데이터의 종류를 정의하는 방식입니다. 자료형은 해당 데이터의 크기, 형식, 그리고 가능한 연산 등을 결정합니다. 다양한 프로그래밍 언어에서 사용되는 일반적인 자료형 몇 가지를 살펴보겠습니다:

정수형 (Integer): 정수 값을 나타내는 자료형입니다. 일반적으로 int 또는 integer로 표시됩니다.
실수형 (Floating-Point): 소수점 이하 값을 가지는 수를 나타내는 자료형입니다. 보통 float, double 등으로 표시됩니다.
문자열 (String): 문자들의 시퀀스로 이루어진 자료형입니다. 대부분의 언어에서 " " 또는 ' ' 안에 텍스트를 작성하여 문자열을 나타냅니다.
부울 (Boolean): 참(True) 또는 거짓(False) 값을 가지는 자료형입니다. 보통 bool로 표시됩니다.
배열 (Array) 또는 리스트: 여러 개의 값들을 순서대로 저장하는 자료구조입니다.
객체 (Object) 또는 클래스: 여러 속성과 메서드를 포함하는 복합적인 데이터 구조입니다.
기타: 많은 프로그래밍 언어에서 추가적인 자료형이 제공됩니다, 예를 들면 날짜와 시간을 다루기 위한 Date, 파일을 다루기 위한 File, 사전(dictionary) 혹은 맵(map) 등이 있습니다.
각 언어마다 지원하는 자료형이 조금씩 다르며, 사용자가 직접 새로운 자료형을 만들 수도 있습니다(구조체(struct), 열거(enum), 클래스(class), 인터페이스(interface) 등). 따라서 사용하는 프로그래밍 언어에 따라 지원되는 기본적인 자료형인지, 그리고 추가적으로 활용할 수 있는 사용자 정의 혹은 라이브러리 제공 타입인지 확인해야 합니다.

Flutter, C/C++,Python의 자료형:

Flutter:

-int
-double
-String
-bool
-List (동적 배열)
-Map (키와 값으로 이루어진 컬렉션)
-Set (중복되지 않는 값들의 집합)
-DateTime (날짜와 시간 정보를 포함하는 객체)

C/C++:

-int
-float
-double
-char (문자)
-bool (C++에서만 사용 가능)
-배열 (Array)
-구조체 (Struct)
-포인터 (Pointer)

Python:
-int
-float
-str
-bool
-list (리스트, 동적 배열)
-tuple (튜플, 변경 불가능한 순서 있는 시퀀스)
-dict (딕셔너리, 키와 값으로 이루어진 해시 맵)
-set (집합, 중복되지 않는 값들의 집합)
이는 각 언어에서 일반적으로 사용되는 자료형 목록이며, 각 언어에 따 라 추가적인 내장 자료형과 사용자 정의 자료형을 만들 수도 있습니다. 또한 Python은 동적 타이핑(dynamic typing)을 지원하므로 변수 에 할당된 값에 따라 자료형이 동적으로 결정됩니다.


#include
#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);
cout << a << ',' << b << ',' << c;
return 0;

}

#include
int main(void) {
int num1, num2;
num1 = 100;
num2 = -300;
std::cout << "두 수의 합은" << (num1 + num2) << "입니다" << std::endl;
return 0;
}

다양한 프로그래밍 언어에서 자동 형 변환이 지원됩니다. 여기에는 몇 가지 예시가 있습니다:

C/C++: C 및 C++은 자동 형 변환을 수행하는 강력한 형식의 언어입니다. 정수와 부동 소수점, 포인터와 정수 등 다양한 유형의 자동 변환이 가능합니다.
Java: Java는 객체 지향 프로그래밍 언어로, 일부 기본 유형 간의 자동 형 변환을 제공합니다. 예를 들어, 작은 크기의 데이터 타입이 큰 크기의 데이터 타입으로 자동으로 변환됩니다.
Python: Python은 동적으로 타입이 결정되는 인터프리터 언어로, 변수에 할당되는 값에 따라 자료형이 자동으로 결정됩니다.
JavaScript: JavaScript도 동적으로 타입이 결정되는 스크립트 언어입니다. JavaScript에서도 다른 유형 간의 일부 자동 형 변환이 가능합니다.
Ruby: Ruby 역시 동적인 스크립트 언어로, 변수에 할당되는 값에 따라 타입이 결정됩니다.
PHP: PHP도 동적인 웹 개발용 스크립트 언어로, 변수 할당과 연산 시 일부 자료형 간에 암묵적인 형 변환이 이루어집니다.
Swift: Swift는 정적 타입 체크를 하는 프로그래밍 언어로서, 명시적인 캐스팅을 제외하고는 일반적으로 명시된 유형 사이에서만 형 변환을 수행합니다.
Rust: Rust는 안전하고 메모리 관리가 엄격한 시스템 프로그래밍 언어로서, 대부분 명시적인 캐스팅을 사용하여 수동으로 형 변환해야 합니다.
위에서 나열된 프로그래밍 언어들은 일부 특성과 함께 다양한 방식으로 자동 형 변환을 지원합니다. 그러나 각각의 언어마다 구체적인 규칙과 동작 방식이 조금씩 다를 수 있습니다

#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;
}

업로드중..

profile
컴퓨터소프트웨어학과

0개의 댓글