предупреждение: неинициализированная переменная // Но я инициализировал! Ошибка компилятора C ++?

Я пытаюсь скомпилировать эту программу, но получаю предупреждение, и когда я запускаю отладчик vc ++ 2010, появляется всплывающее окно: ( Вот мой код:

#include <iostream>
using namespace std;
int num;
int min(int mas[])
{
    int i,minn,index;        /* But I have declared them : (((( */
    for(i=0;i<num;i++)
        {
            if(mas[i]!=0)minn=mas[i];
            break;
        }
    if(i==num) return 0;
    for(i=0;i<num;i++)
       if(mas[i]!=0 && minn>mas[i])
        {
            minn=mas[i];
            index=i;
        }

    mas[index]=0;
    return minn;
}

int main()
{
    cin>>num;
    int *array=new int[num];  int tmp;
    tmp=min(array);

}

и журнал компилятора:

prog.cpp: In function ‘int min(int*)’:
prog.cpp:6: warning: ‘index’ may be used uninitialized in this function
prog.cpp:6: warning: ‘minn’ may be used uninitialized in this function

Что я делаю не так? или это ошибка компилятора? :) Спасибо :)

6
задан Davit Tvildiani 25 July 2011 в 08:52
поделиться