04. 포인터와 문자열
·
프로그래밍 언어/C
🧠 포인터와 문자열🧩 포인터는32비트 시스템에서는 4바이트를 가지며,64비트 시스템에서는 8바이트 크기를 가진다.🧵 문자열(String)은 끝에 '\0'이라는 널 문자(null character)를 포함한다.🔒 포인터가 가리키는 값은 변경 가능하지만, 배열 이름은 포인터 상수이기 때문에 그 값을 변경할 수 없다.🔍 문자열 선언 방식의 차이🧱 배열 방식char str1[] = "My string"; // str1은 포인터 상수 (주소 값 변경 X)char * const str2 = str1; // 위와 동일📦 문자열 "My string"이 배열로 복사되어 저장됨str은 배열 이름이며, 해당 문자열 데이터를 직접 포함✅ 각 문자는 수정 가능 (예: str[0] = 'm';)❌ str은 포인터 ..
02. 상수(Constant)
·
프로그래밍 언어/C
상수는 프로그램에서 값이 변하지 않는 데이터를 의미한다.이는 리터럴 상수와 심볼릭 상수로 구분할 수 있다.📌 1. 리터럴(Literal) 상수int num = 30 + 40;여기서 30, 40은 이름이 없는 고정된 값 → 리터럴 상수프로그램 코드에 직접 숫자, 문자, 문자열, 실수 등을 쓰는 방식🔹 특징자료형은 컴파일러가 자동으로 적절히 부여 (예: 30 → int, 30.0 → double)컴파일 시 메모리에 저장될 수 있다. (상수 풀, 읽기 전용 메모리 등)📌 2. 심볼릭(Symbolic) 상수이름이 있는 상수.변수처럼 보이지만, 값을 바꿀 수 없다. C에서는 다음 2가지 방법으로 심볼릭 상수를 선언한다:const 키워드를 이용한 상수#define을 이용한 매크로 상수✅ const 상수cons..