안녕하세요.
cin으로 문자 입력받아서 if 문에 넣고 싶습니다.
즉,
char lang[5], gram[5];
cint >> lang;
(input z)
if (lang=="z")
{
cout << "된다" << endl;
}
이렇게 하고 싶은데 if (lang=="z")이게 작동하지 않습니다.
어떻게 하면 될까요?
안녕하세요.
cin으로 문자 입력받아서 if 문에 넣고 싶습니다.
즉,
char lang[5], gram[5];
cint >> lang;
(input z)
if (lang=="z")
{
cout << "된다" << endl;
}
이렇게 하고 싶은데 if (lang=="z")이게 작동하지 않습니다.
어떻게 하면 될까요?
==이라는 연산자가 오버라이드 되었는지는 잘 모르겠네요.
원래는 비교하려면
lang=="ko" ==> !strcmp(lang, "ko") 이렇게 되구요 대소문자구별하지 않으려면 !strcasecmp(lang,"ko")
원래 strcmp함수는 어셈블리어의 cmp명령처럼 작으면 -1, 같으면 0, 크면 1를 넘기는데 !(NOT)연산자로 같은경우를 비교합니다.