(c++)正确匹配输出配对数时出现-858993458


#include<stdio.h>
#include<stdlib.h>
int main()  
{
    char x[1024];
    int i=0;
    gets(x);
    int n,m;
    for(i;(x[i])!='@';i++)
    {
        if((x[i])=='(')
        {
            n++;
        }
        if((x[i])==')')
        {
            m++;
        }
    }
    if(m==n)//匹配正确
    {
        printf("%d",m);
    }
    else//匹配错误
    {
        printf("no");
    }
    return 0;
}

m和n没有初始值
声明变量时设置初始值即可
写为
int n=0,m=0;
有帮助望采纳~

m没有初始化,在循环外面设置m=0;