코드를 작성할 때 오타가 났을 시, 컴퓨터는 그대로 오류를 표시한다. 빨간 물결줄로 오류 위치 하단에 표기되며 오류 위치(줄 번호) 또한 표기된다.
오류가 발생했을 때 오류코드를 구글링하여 찾아본다.
세미콜론(;)은 명령의 끝이다. 빠지지 않게 기입하도록 하며, 오류를 발생시킬 불필요한 공백은 입력하지 않는다.
코드 앞에 : // (code)
범위 주석 /* (code) */
*유용하게 쓰는 단축키 기능
문법상 쓸 수 없는 문자를 쓸 수 있게 만드는 기능
'기능의 묶음'을 선언한다.
ex) Using System
Using 구문으로 선언한 기능 중 사용할 기능을 서술한다.
ex) Using System으로 선언하고, System의 기능 중 Console을 사용하겠다.
코드 입력시 반복 작업을 줄이기 위한 방법
ex)
Console.WriteLine("오크는/은 공격력 10을 가지고, 공격하면 오크이/가 10의 데미지를 주며, 10이 띄워집니다.");
Console.WriteLine("슬라임는/은 공격력 3을 가지고, 공격하면 슬라임이/가 3의 데미지를 주며, 3이 띄워집니다.");
이와 같은 코드를 아래와 같이 자리표시자로 간단하게 표기할 수 있다
Console.WriteLine("{0}는/은 공격력 {1}을 가지고, 공격하면 {0}이/가 {1}의 데미지를 주며, {1}이 띄워집니다.","오크",10);
Console.WriteLine("{0}는/은 공격력 {1}을 가지고, 공격하면 {0}이/가 {1}의 데미지를 주며, {1}이 띄워집니다.", "슬라임", 3);
이와 같은 방식으로, 코드 입력 시에 반복을 줄이고, 변수 변경을 용이하게 한다.
변수 선언 시 데이터의 유형을 정의한다.
ex) int, float, char, string 등
변수에 데이터를 할당/저장(초기화)해야지만 사용할 수 있다.
ex)
int num = 1;
동일한 이름의 변수는 두 번 이상 사용할 수 없다
ex)
int num = 1;
int num = 3; //오류남
변수를 선언하고 초기화를 하거나, 변수 선언과 동시에 초기화할 수 있다.
ex)
int num = 1;
이것과
int num;
num = 1;
이것은 동일하다
변수명은 유의미한 단어를 쓰자
ex) 공격력-attack, 방어력-defense, 속도-speed
띄어쓰기가 불가능하여, 카멜 표기법을 사용한다.
*카멜 표기법 : 두 단어 이상으로 변수명 만들 시, 띄어쓰기 대신 단어의 시작마다 대문자로 표현
ex) int attackDelayTime, int shootCoolTime
*그 외 - 특수문자 사용 불가능, 숫자부터 시작 불가능
상수처리할 변수 앞에 'const'를 쓴다.
ex)
const int playerNum = 8;
또한, const는 선언과 동시에 데이터를 저장해야 한다.
자료형 이름 | 자료형 형태 | 메모리 크기 | 표현 범위 |
---|---|---|---|
bool(boolean) | 논리자료형 | 1byte | true, false |
short | 부호 있는 정수형 | 2byte | 1, -100, 362 등 |
int | 부호 있는 정수형 | 4byte | 1, -100, 362 등 *short와 비교해 더 큰 범위를 다룸 |
float | 부동소수점 실수 | 4byte | 0.5, 15.2524, -1414.213 등 |
double | 부동소수점 실수 | 8byte | 0.5, 15.2524, -1414.213 등 *float와 비교해 더 큰 범위를 다룸 |
char | 유니코드 문자형 | 2byte | 'a' , 'b', '한' 등 |
string | 유니코드 문자열 | - | "abcde", "안녕" 등 |
*부동소수점 : 점의 위치가 고정적이지 않다. -> 소수점 자릿수가 고정되어 있지 않다.
즉 고정소수점에 비해 실수의 표현 범위가 더 넓어지므로 정확성을 높일 수 있다.
float 입력시 실수 뒤에 f를 필수 기입
ex)
float num = 3.5253f;
char은 따옴표, string은 쌍따옴표로 선언한다
ex)
char txt = '맹';
string txt2 = "안녕하세요";
문자열로 선언된 숫자는 숫자로 선언된 숫자와 다르다.
ex)
int num = 1;
char word = '1'; //문자열이며 숫자로 사용 불가능