1. namespace
{
int a = 0;
}
2. char*과 String의 차이
A. char *a = "abc";
B. String a = "abc";
A는 char형의 "abc"를 가리키는 포인터 타입. (a가 가리키는 것을 바꾸면 세그먼트 폴트 오류)
B는 String클래스의 오브젝트를 생성. a는 String 클래스의 인스턴스. (length(), size() 등 사용가능)
3. _T("")
유니코드를 멀티바이트로 변경
4. 표기법의 종류 (camel, pothole, pascal)
a. camel
int myFristVariable
b. pothole
int MyFirstVariable
c. pascal
int my_first_variable
5. 3.14f와 3.14의 차이
기본적으로 f를 붙여주지 않으면 double형으로 선언된다.
6. cin과 scanf
cin은 처리속도가 scanf에 비해 2~3배 느리다. stdio 버퍼와 동기화하는 과정에서 느려지기 때문.
하지만 코드에 std::ios_base::sync_with_stdio(false);를 추가해주어 동기화를 풀어준다면 scanf와 속도가 비슷해진다.
7. gets와 fgets와 cin.getline
gets는 \n을 만날때 까지 버퍼를 비울 수 없다. 버퍼의 크기를 넘어설 경우 위험.
fgets는 버퍼의 크기를 지정해줄 수 있다.
위 두개는 c언어의 이야기. c++에서는 getline을 사용하면 됨.
getline(cin, string); 한 라인 단위로 받아옴.
8. XOR(Exclusive OR)
같을 때 False
다를 때 True
9. rand()함수의 사용
srand((unsigned int)time(0)) 선언. (매번 무작위 숫자 생성)
rand()%100.
실무에선 난수 발생알고리즘을 따로 만들어 사용.
10. 열거체 enum
enum {
RCK=1,
PPR,
SRS
}
일 때 RCK는 1, PPR은 2, SRS는 3.
https://ide.c9.io/cccc1763/cpp_basic_1807
180702 Folder
1_shift shift 연산
2_enhancement 아이템 강화 프로그램
3_RPS 가위바위보
4_decToHex 10진수를 16진수로
'Computer > C와 C++' 카테고리의 다른 글
7월 10일 (0) | 2018.07.11 |
---|---|
학생 관리 프로그램 & 도서관 책 관리 프로그램 (0) | 2018.07.06 |
7월 3일 (0) | 2018.07.03 |