读书人

一个程序。运行总是出错。大家帮小弟我

发布时间: 2012-02-21 16:26:23 作者: rapoo

一个程序。运行总是出错。大家帮我看看。
#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”内存。
昨天运行是成功的。今天不知怎么搞的拿去交作业的时候,就不行了。我晕咯。
大家帮我看看 谢谢 :)

[解决办法]
因为 char *string=argv[1]; 是空的

你要用命令行参数的方式启动


[解决办法]
你运行时没加参数吧

读书人网 >C语言

热点推荐