int position_of_largest(int * array, int size)
{
int largest, i, largest_i;
i = 0;
largest_i = 0;
while (i < size)
{
if (i == 0)
{
largest = array[0];
largest_i = 0;
}
else
{
if (largest < array[i])
{
largest_i = i;
largest = array[i];
}
i++;
}
}
return largest_i;
}
이 코드는 배열에서 가장 높은 요소의 인덱스를 찾아서 반환합니다. 이 코드에는 세그멘테이션 오류가 있습니다. 그러나 나는 그것이 무엇인지 전혀 모릅니다! 나는 여러 번 코드를 살펴 봤는데 어떤 문제도 보이지 않는다. 나는 C, btw에 익숙하지 않다 (많은 것을 설명한다). 감사.왜이 함수는 결코 반환하지 않습니까? 세분화 오류입니까?
세그먼트 오류가 .. 당신이 기능'position_of_largest (INT의 * 배열, INT 크기)를 호출 할 때 내가 희망 입니다'당신은 포인터를 보내는 충분한 메모리 공간 (크기 * 4 바이트)을 '배열'포인터 – Haris
'무한 루프'? – BLUEPIXY
함수 호출을 볼 수 있습니까? 또한'i ++'는 절대 실행되지 않습니다. – Igor