一个程序。运行总是出错。大家帮我看看。
#include <stdio.h>
const int F=3;// #define F 3
struct Dtran //¹¹Ôìת»»±í
{
int input_a;
int input_b;
}T[4]={{1,2},{1,3},{1,2},{1,2}};
int move(int s,char c ) //ת»»º¯Êý
{
if(c!='a'&&c!='b')
return 0;
return c=='a'?T[s].input_a:T[s].input_b;
}
int main(int argc, char *argv[])
{
char *string=argv[1];//¶ÁÈë²ÎÊý
int next_s=0;//³õʼ״̬£¬"ÏÂÒ»¸ö"״̬;
int i=0;
char nextchar=string[0];
while('\0'!=nextchar)
{
if(!(next_s=move(next_s,nextchar)))
{
next_s=!F;//²»½ÓÊÜ״̬
break;
}
nextchar=string[++i];
}
if(next_s==F)
printf("Your string are accepcted!\n");
else
printf("Your string are refused!\n");
return 0;
}
--------------------------
编译可以通过。运行提示错误。“0x00401324”指令引用的“0x00000000”内存。
昨天运行是成功的。今天不知怎么搞的拿去交作业的时候,就不行了。我晕咯。
大家帮我看看 谢谢 :)