Programming/_C++
-
C++_upper_lowerProgramming/_C++ 2023. 6. 16. 14:48
코딩 테스트 문제를 준비하다보면 소문자를 대문자로, 대문자를 소문자로 바꾸는 문제가 간혹 보인다. 이를 C++에서 해결하는 몇가지 방법을 보자. 1. toupper(), tolower(), isupper(), islower() toupper()는 문자열을 대문자로 변경하는 함수이다. #include using namespace std; int main(void) { string my_string = "Test"; string answer = ""; for (char ele : my_string) { answer += toupper(ele); } cout
-
C++?Programming/_C++ 2023. 6. 5. 17:20
C++ 컴퓨터가 어떤 작업을 수행하기 위해서 그 작업에 대해 컴퓨터가 이해할 수 있게 해주어야 하며, 원래는 기계어(Machine code)로 프로그램을 만들어줘야 하지만, 기계어는 0과 1로 되어있기 때문에 기계어로 프로그램을 만드는 것은 너무나도 힘듭니다. 그렇기에 인간이 이해할 수 있는 프로그래밍 언어가 여러가지 고안되었으며, 대표적으로 C, C++, Python등이 있습니다. C++은 컴파일러(Compiler)를 사용하여 작성한 코드를 기계어로 번역해주는 프로그래밍 언어 입니다. CompilerC++을 기계어로 만드는 작업을 컴파일(Compile)이라고 부르며 컴파일러(Compiler)는 C++을 기계어로 만들어주는 소프트웨어입니다.컴파일은 사용하는 C++ 개발 환경에 따라 다르며, 컴파일이 완료..
-
ios::sync_with_studio, cin.tie, cout.tieProgramming/_C++ 2023. 5. 14. 18:40
- 위의 세가지를 사용하기 위해서는 C와 C++의 입출력을 혼용하지 않으면서, thread를 사용할 때 주의를 해야 합니다. 1. ios::sync_with_studio(bool_sync); 위의 구문은 C++ 표준 스트림들이 C표준 스트림들과 각각의 입출력 연산 후에 동기화 여부를 설정해줍니다. false or 0: bool_sync에 다음 값을 넣게 되면, C 표준 stream과 C++ 표준 stream의 동기화를 끊게 됩니다. bool_sync = false == (0) 동기화를 끊는다면, C++ stream은 독립적인 버퍼를 갖게 되어서 C와 C++의 입출력 방식을 혼용하여 쓰면 위험합니다. Multi-thread를 사용하는 경우 Thread-unsafe가 되어서 예상하지 못한 값이 나올 수 있습..