Функция ведет себя так, как будто она уничтожает таблицу внутри оператора if - PullRequest
0 голосов
/ 24 октября 2019

Возвращает значение i, так как по какой-то причине не добавляет +1 к счетчику и не может ввести оператор if

Предполагается, что функция возвращает начальную позицию слова hi, когдаон сопоставляет его с другой таблицей, поскольку сравнивает их. Он берет таблицу из main, как я тестировал в начале for с отпечатком, но не печатает таблицу после for

int Brute_Force(char array[],char key[])  
{
    int i,j,flag=0;
    for(i=0; i<=8; i++)  
    {
       for(j=0; j<2; j++) 
        {
            if(array[i+j]=!key[j]) 
            {
                flag=0;
            }
            if(array[i+j]==key[j])
            {
                flag=flag+1;
            }
            if(flag == 2)
            {
                return i;
            }


        }
    }
   return -1;  
}
int main()
{
   int show;

 char A[10] = {'o','h',' ','h','i',' ','m','i','k','e'};
 char B[2] = {'h','i'};  


 show = Brute_Force(A,B); 

   printf("%d",show);

}
...