gofkdvjvl   4년 전

vector<int> num; 

 for(int i=9;i>9-c.size();i--)

{ num.push_back(i); }

이처럼 c.size()를 포문안에 넣고 돌릴경우 n=10인 예제의 답이 도출되지 않는데 (다른 예제는 됩니다)

바깥에

 int m=c.size();

 for (int i=9;i>9-m;i--)

처럼 밖에서 변수를 선언해서 돌릴 경우는 됩니다... 

혹시 이유를 아시는 분 있을까요?? ㅠㅠ 답답하네요 

yhc3006   4년 전

기본적으로 c.size()의 자료형은 unsigned int 형입니다.

int형인 9와 unsigned int형인 c.size()를 혼용하여 런타임에러가 나는듯 합니다.

(int)c.size()로 변형시키면 정상작동할 듯 합니다.


댓글을 작성하려면 로그인해야 합니다.