我想编写 ac 程序,用于根据运算符拆分“23 * 34”字符串,并将数字单独存储为字符串数组中的单独字符串。我是以下代码。
struct exp_details
{
char operator[10];
char *number[10];
}ed;
int split(int m,int n,char *str) /*m for operator index, n for str index */
{
int i,j=0;
for(i=n;(str[i] != ed.operator[m]) && (str[i] != '\0');i++,j++)
{
ed.number[m][j] = str[n];
}
if(str[i] != '\0')
{
split(m++,i++,str);
}
else
return 1;
return 0;
}
但这种编码显示分段错误。它正在运行
ed.number[m][j] = str[n];
这个声明。我认为这个声明只会引起问题。我想,我的逻辑是正确的。但我不知道如何纠正它。请帮我。提前谢谢你。