C#에서 프로그래밍을 할 때 데이터를 저장하고 활용하기 위해 **변수(Variable)**와 **상수(Constant)**를 사용합니다. 본 글에서는 변수와 상수의 개념, 선언 방법, 활용 예제 등을 설명합니다.
1. 변수(Variable)란?
변수는 프로그램 실행 중에 값을 변경할 수 있는 저장 공간입니다. 변수를 선언할 때는 데이터 타입과 변수 이름을 지정해야 합니다.
변수 선언 및 초기화
int number = 10; // 정수형 변수 선언 및 초기화
string message = "Hello, C#"; // 문자열 변수 선언 및 초기화
bool isActive = true; // 불리언 변수 선언 및 초기화
변수의 기본 데이터 타입
데이터 타입설명예제
int | 정수형 변수 | int age = 25; |
double | 실수형 변수 | double pi = 3.14; |
char | 문자형 변수 | char grade = 'A'; |
string | 문자열 변수 | string name = "John"; |
bool | 논리형 변수 | bool isDone = false; |
변수의 값은 프로그램 실행 중 변경할 수 있습니다.
int score = 90;
score = 95; // 변수 값 변경
2. 상수(Constant)란?
상수는 한 번 값이 할당되면 변경할 수 없는 저장 공간입니다. 상수를 사용할 때는 const 키워드를 사용합니다.
상수 선언 및 초기화
const double Pi = 3.14159; // 원주율 상수
const int MaxValue = 100; // 최대값 상수
상수는 변경할 수 없으며, 반드시 선언과 동시에 초기화해야 합니다.
Pi = 3.14; // 오류 발생: 상수는 값을 변경할 수 없음
3. 변수와 상수의 차이점
항목 | 변수(Variable) | 상수(Constant) |
값 변경 | 가능 | 불가능 (한 번만 할당 가능) |
선언 시 초기화 | 선택 가능 | 반드시 필요 |
사용 목적 | 변경 가능한 데이터 저장 | 변경되지 않는 데이터 저장 |
변수와 상수를 적절히 활용하면 코드의 가독성을 높이고 유지보수를 쉽게 할 수 있습니다.
4. readonly 키워드 (읽기 전용 변수)
readonly 키워드는 런타임(실행 시점)까지 값을 변경할 수 있는 변수를 정의할 때 사용합니다. 일반적인 상수(const)는 컴파일 타임에 값이 결정되지만, readonly는 생성자를 통해 초기화할 수 있습니다.
class Example
{
public readonly int MaxLimit;
public Example(int limit)
{
MaxLimit = limit; // 생성자에서 초기화 가능
}
}
readonly는 객체가 생성될 때 한 번 할당되며, 이후 변경할 수 없는 변수입니다.
5. 실전 예제: 변수와 상수 활용
아래는 변수와 상수를 활용한 간단한 프로그램 예제입니다.
using System;
class Program
{
const double Pi = 3.14159; // 원주율 상수
static void Main()
{
int radius = 5; // 반지름 변수
double area = Pi * radius * radius; // 원의 넓이 계산
Console.WriteLine("반지름 {0}인 원의 넓이: {1}", radius, area);
}
}
실행 결과
반지름 5인 원의 넓이: 78.53975
6. 마무리
- 변수는 변경 가능한 데이터를 저장하는 공간이며, 다양한 데이터 타입을 가질 수 있습니다.
- 상수는 선언 후 값을 변경할 수 없으며, 주로 변하지 않는 데이터를 저장하는 데 사용됩니다.
- **readonly**는 런타임 중 한 번 할당 후 변경할 수 없는 읽기 전용 변수입니다.
이제 C#에서 변수와 상수를 효과적으로 활용할 수 있습니다. 😊
'로봇' 카테고리의 다른 글
Forward Kinematics와 Inverse Kinematics 개요 (0) | 2025.03.10 |
---|---|
Mujoco, Genesis AI, Gazebo, RViz, CoppeliaSim 비교 분석 (0) | 2025.03.05 |
Visual Studio 2022 Community 단축키 가이드 (0) | 2025.02.25 |
Visual Studio C# 설치 및 환경 설정 가이드 (0) | 2025.02.25 |
[아두이노] OpenRB-150 을 이용한 로봇팔 [배선] (0) | 2025.02.20 |