나는 다른 수치 시스템 페이지에 N 진수 SK 변환하지만, 때로는 충돌하고 내가 오류 코드가 0xc0000005가 (프로그램이 여전히 변환 모든 숫자를 출력) 프로그램을 만든 . 내가 변환 된 숫자가 6 개 기호보다 길다는 것을 알아 차렸을 때 (또는 단지 우연 일 때).C++ 무작위가 0xc0000005 오류
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
{
long n,sk,p,j;
string liekanos;
ifstream f("u1.txt");
f >> n;
for (int i=0;i<n;i++)
{
f >> sk >> p;
j=0;
while (sk>0)
{
liekanos[j]=sk % p;
sk/=p;
j++;
}
for (j>=0;j--;)
{
if (liekanos[j]<10)
cout<<int(liekanos[j]);
else cout<<char(liekanos[j]+55);
}
cout<<endl;
}
return 0;
}
예 입력 : 당신의 liekanos
문자열 크기 나 용량이 결코 때문에
3
976421618 7
15835 24
2147483647 2
을 그냥 알다시피,'0xC0000005' 액세스 위반 (잘못된 포인터) 오류입니다. 이것은 일반적으로 프로그램에서 포인터 처리 또는 메모리 할당에 결함이 있음을 의미합니다. – japreiss