본문 바로가기

C/C++2

[C & C++] const char * vs char * const const의 위치에 따라서 포인터가 상수인지 데이터가 상수인지 아니면 둘 다 상수인지 정해진다. 맨날 헷갈려해서 이참에 정리한다. char greeting[] = "Hello"; // 비상수 포인터, 비상수 데이터 char *p = greeting; // 비상수 포인터, 상수 데이터 const char *p = greeting; // 상수 포인터, 비상수 데이터 char * const p = greeting; // 상수 포인터, 상수 데이터 const char * const p = greeting; 규칙이 없어 보이지만, 자세히 보면 규칙이 있다. 바로 *을 기준으로 나눠 생각하면 된다. const 키워드가 * 왼쪽에 있으면 포인터가 가리키는 대상(데이터)이 상수이다. const 키워드가 * 오른쪽에 있.. 2023. 7. 27.
[VSCode] VSCode에서 C/C++ 실행 및 디버깅하기 VSCode에서 C/C++을 사용하려면 별도의 조치가 필요하다. 이 단계들이 조금 번거롭기에, C를 주력으로 사용하는 사람이라면 Visual Studio를 쓰는 것을 권장한다. 설치만 하면 별도의 조치 없이 바로 사용할 수 있으나, 프로그램 조금 무거운 것이 흠이다. 나는 C/C++로 개발할 것도 아니고, 단순 알고리즘 공부 용으로 C를 사용하기 때문에 기존에 사용하던 VSCode를 계속 사용하고 싶었다. (실은 다 필요 없고 vim을 사용해도 되긴 한다. vim 최고(?!)) 서론은 이쯤 하고, 본론으로 들어가겠다. 1. Msys2 설치 https://www.msys2.org/ MSYS2 Software Distribution and Building Platform for Windows www.msys.. 2022. 2. 24.