728x90
g++에서는 초기화 안해도 자동으로 false로 초기화가되는것같다?
#include<iostream>
using namespace std;
int main()
{
cin.tie(NULL);
cin.sync_with_stdio(false);
//처음엔 이상하다 vscode에선 잘되는데 버전 차이인가 생각했었다만 컴파일러 차이였다
//초기화 하지 않고 사용시 g++에서는 잘 작동하고(초기화 안해도 0이 되는듯 cl(마소컴파일러)에서는 쓰레기값이 설정 되는것 같다.
//근데 초기화를 왜 안했었냐 ㅠㅠ 에러도 안떠서 당황했네
bool a[31] = {};
for (int i = 1; i <= 28; i++)
{
int o;
cin >> o;
a[o] = true;
}
int count = 0;
for (int i = 1; i <= 30; i++)
{
if (a[i] == false)
{
cout << i << '\n';
count++;
}
if (count == 1)
{
cout << i;
break;
}
}
}
728x90
'c++ 잊었던것, 사소한것' 카테고리의 다른 글
동적할당과 정적할당을 몰랐었다 (0) | 2024.01.25 |
---|---|
static 클래스 멤버 변수는 클래스 밖에서(전역범위) 초기화를 진행해주어야 한다. (0) | 2024.01.25 |
두 값이 다를 때 xor 이용해 추가 메모리없이 값을 교환가능, 세 변수중 두 변수가 값이 같고 하나가 다를때 하나 찾기 (0) | 2024.01.21 |