Visual studio 실행 후 C# 문법 실습 시작!
Console.WriteLine("출력하고 싶은 언어 입력");
Console.WriteLine(수식입력);
// 를 입력하면 해당 줄은 주석 취급되며 코드에 영향을 주지 않는다. (메모 및 전달사항으로 활용 가능)
변수 = 데이터가 안전하게 살 수 있는 집
기본 형식: 데이터 형식 변수이름 ;
데이터 형식
집에 살 수 있는 데이터가 무엇인지 정해준다. (자료형이라고 지칭)
문자열: string
- string codingclub = "팀스파르타";
문자: char
- char team_1 = '팀';
- char team_2 = '스';
- char team_3 = '파';
- char team_4 = '르';
- char team_5 = '타';
정수: int
- int age = 14; (정상)
- int level = "32"; (비정상: "" 쌍따옴표 속에 들어가 있는 것은 문자로 취급하기 때문에 int 변수와 함께 사용하면 오류)
실수: float(소수점 7자리까지), double(소수점 15~6자리까지)
- float exp = 56.5f; (정상)
- float speed = 56.5; (비정상: 표기 없이 실수를 사용하면 double로 취급하기 때문에 float 변수와 함께 사용하면 오류)
- double exp = 56.5d; (정상)
- double speed = 56.5; (정상)
중요 (무조건 알아야 됨)
참고 (이후에 활용 될 수 있음)
기타 (많이 쓰이지 않으니 다른 것들부터 익숙해지기) |
||||
자료형
|
값
|
특징
|
기본값
|
크기
|
bool
|
true , false
|
|
false
|
1 byte
|
string
|
문자열
|
" " 로 감싸야 함
|
null
|
계속 변함
|
char
|
문자
|
' ' 로 감싸야 함
|
'\0'
|
2 byte
|
sbyte
|
8bit 정수
|
-128 ~ 127
|
0
|
1 byte
|
byte
|
8bit 정수 (부호 없음)
|
0 ~ 255
|
0
|
1 byte
|
short
|
16bit 정수
|
–32,768 ~ 32,767
|
0
|
2 byte
|
ushort
|
16bit 정수 (부호 없음)
|
0 ~ 65,535
|
0
|
2 byte
|
int
|
정수
|
–2,147,483,648 ~ 2,147,483,647
|
0
|
4 byte
|
uint
|
정수 (부호 없음)
|
0 ~ 4,294,967,295
|
0
|
4 byte
|
long
|
64bit 정수
|
–9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
|
0
|
8 byte
|
ulong
|
64bit 정수 (부호 없음)
|
0 ~ 18,446,744,073,709,551,615
|
0
|
8 byte
|
float
|
실수
|
1.5E-45 ~ 3.4E+38 (7자리 유효) 0.0000001f 뒤에 f를 붙여 야함
|
0
|
4 byte
|
double
|
실수
|
5.0E-324 ~ 1.7E+308 (15자리 유효) 0.000000000000001d 뒤에 d를 붙여야 하지만 붙이지 않더라도 double로 인식
|
0
|
8 byte
|
Decimal
|
실수
|
±1.0 x 10-28 ~ ±7.9228 x 1028 28-29개의 자릿수
|
0
|
16 byte
|
변수 이름
변수를 구분해주는 이름의 역할을 한다. 원하는 대로 만들 수 있다.
영어, 숫자, 언더바 사용해서 만드는 것을 추천
ex)
int age; < 숫자 형식을 보관할 수 있는 변수
string name; < 문자 형식을 보관할 수 있는 변수
변수 수정
변수값을 수정하면 가장 마지막에 수정 된 값으로 출력된다.
- 형식이 있으면 변수 생성(string codingclub = "팀 스파르타";), 형식이 없으면 데이터 저장(codingclub = "스파르타코딩클럽";)
혹시 수정 순서에 따라 같은 변수이름을 여러개의 값으로 출력 할 수 있는지 궁금해 해봤더니 되는 것 확인!
같은 변수 이름이지만 하나의 프로젝트 내에서도 변수값 수정 타이밍에 따라 여러개의 값이 출력 될 수 있는 것 같다.
변수값 지정 후 출력하면 지정 된 값으로 출력, 변수 수정하면 수정한 순간부터 그 다음 내용은 수정 내용으로 출력.
(아직은 배운 내용이 어디에 쓰이는지조차 모르는 초보자 이기 때문에 일단 배우는대로 다 기억해두기,,)
형변환(int ↔ float)
int x = 10;
float y = 10.5;
float z = (float)x + y; // 사용하고 싶은 변수 앞에 괄호하고 변경하고 싶은 자료형 명시
Console.WriteLine(z); // 20.5 출력
int x = 10;
float y = 10.5;
int z = x + (int)y; // 사용하고 싶은 변수 앞에 괄호하고 변경하고 싶은 자료형 명시
Console.WriteLine(z); // 20 출력 (소수점 아래는 버림)
형변환(다른 자료형 ↔ 문자)
다른 자료형을 문자로 바꿀 때는 간단히 뒤에 .ToString(); 붙이면 변환 가능
str = string의 축약어
int x = 10;
string xStr = x.ToString(); // "10"
float y = 10.5f;
string yStr = y.ToString(); // "10.5"
bool myBool = true;
string boolStr = myBool.ToString(); // "true"
문자를 다른 자료형으로 바꿀 때는 3가지 방법 사용 가능
1. Convert 클래스 이용
string iStr = "10";
int x;
x = Convert.ToInt32(iStr); // x:10
string bStr = "true";
boll b;
b = Convert.Toboolean(bStr); // b:true
2. Parse() 함수 사용
- int.Parse();: 입력값의 형식이 정확한(정수처럼 생긴 문자열) 경우 숫자로 변환 가능, 즉 string만 받을 수 있다.
- Convert.ToInt32();: 숫자, 문자, null 형식의 입력값을 모두 받을 수 있다.
string iStr = "10";
int x;
x = int.Parse(iStr); // x:10
string bStr = "true";
boll b;
b = bool.Parse(bStr); // b:true
3. TryParse() 함수 사용
(out 개념과 관련해 공부해봤는데 아직 예제들을 온전히 알아듣기엔 모르는 함수가 많다,, 예제를 알아들을 수 있기 전까진 일단 함수 바깥까지 변수값을 적용해준다 정도로 이해하고 넘어가겠다.)
string iStr = "10";
int x;
int.TryParse(iStr, out x); // x:10
string bStr ="true";
bool b;
bool.TryParse(bstr, out b); // b:true
메소드
|
설명
|
ToBoolean
|
부울 형태로 변환
|
ToByte
|
유니코드를 정수 형태로 변환
|
ToChar
|
유니코드 형태로 변환
|
ToDeximal
|
Decimal 숫자 형태로 변환
|
ToDouble
|
실수 형태로 변환 |
ToInt16 | 16비트 부호 있는 정수로 변환 |
ToInt32 | 32비트 부호 있는 정수로 변환 |
ToInt64 |
64비트 부호 있는 정수로 변환
|
ToSbyte | 8비트 부호 있는 정수로 변환 |
ToSingle | 단정 밀도 부동 소숫점으로 변환 |
ToString | 문자열로 변환 |
ToUnit16
|
16비트 부호 없는 정수로 변환
|
ToUnit32 | 32비트 부호 없는 정수로 변환 |
ToUnit64 |
64비트 부호 없는 정수로 변환
|
기억력이 안 좋은 관계로 일단 전부 메모,,
- F5: 디버깅(작업한 콘솔 창 볼 수 있음)
- 새 프로젝트: 우측 솔루션 탐색기에서 작업중인 프로그램 우클릭 > 새 프로젝트
- 새 프로젝트 디버깅: 상단의 톱니바퀴 눌러 디버깅 할 프로젝트로 변경
<용어>
- 선언: 변수를 처음 만드는 것을 '선언하다'로 표현 (int x;)
- 할당: 변수에 데이터를 넣어주는 것 (int x = 10;)
- 초기화: 가장 처음 데이터를 할당하는 것
( int x =10; // 처음 데이터가 들어갔을 때 초기화 했다고 말한다.
x = 21;
x = 31;)
'게임 기획 > 내일배움캠프(개발)' 카테고리의 다른 글
[TIL] 풍선을 지켜라 2D 게임 만들기 (0) | 2025.04.09 |
---|---|
[TIL] Unity로 2D 게임 만들기 과제 (1) | 2025.04.08 |
[TIL] Unity로 2D 게임 만들기 (0) | 2025.04.07 |
[TIL] C# 사전문법 기초 (연산자, 조건문) (0) | 2025.04.03 |
[TIL] Unity 조사하기 (1) | 2025.04.02 |