char array[5];
하구
cin>>array;
한다음에 abcde
일케 입력하면 문자열 한칸에 각각 하나씩 들어가나요?
안들어가죠?
근데 array[3]하면 d가 나오는데 이건 왜인가요?
int main() {
int t;
int score = 0;
cin >> t;
char* mark = new char[t];
cin >> mark;
for(int i=0;0<t;i++)
{
if (mark[i] == 'o')
score++;
else
continue;
}
cout << score;
}
오 이것은 버퍼 오버런인가
문자열 한칸에 하나씩 들어감
C언어 해봤으면 scanf("%s", array) 생각해보면 될듯
하나씩 들어가나요? 저그럼 이거 오류가 뭔지 한번만 봐주실수있으신가요...??
int main() { int t; int score = 0; cin >> t; char* mark = new char[t]; cin >> mark; for(int i=0;0<t;i++) { if (mark[i] == 'o') score++; else continue; } cout << score;}
array[3] 했는데 왜 d가 나오냐고? 당연하지, 0번에 a, 1번에 b, 2번에 c, 3번에 d, 4번에 e 들어가잖아.
아 늦게 올라온거 봤네 ㄱㄷㄱㄷ
넵 봐주시면 감사하겠습니다...!
o 개수에 따라 score를 쌓아서 score 출력하는거지? for문을 for (int i = 0; i < strlen(mark); i++) { if (mark[i] == 'o') { score++; } } 이렇게 바꿔봐
string.h 헤더 파일 include 해야함
아까도 그렇구 바꾸라구 해주신것도 그렇구
예외가 throw됨: 읽기 액세스 위반입니다. mark이(가) 0x2092112였습니다.
이런 에러가 뜨네요.... 잘 모르겠지만 도와주셔서 감사합니다ㅜ
입력 어떻게 했음?
근데 i<t 는 왜 무한루프가 될까요...? t를 무한으로 넣은 것도 아닌데요ㅠ
입력 그냥 7하고
oxooxoo 이런식으로 넣었는데요...ㅠ
이상하다;; 왜 난 다 잘되는거지
당연히 array[3]하면 d나오지 - dc App
0 < t 때문에 무한루프 돌고 있을 듯