1. namespace

namespace K
{
  int a = 0; 
}
불러올 때  K::a


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

+ Recent posts