/*
**	オプション処理部
**	
**	getopt.c  1993.08.27 by yamana-a
**	
*/
#include	<stdio.h>
#include	<stdlib.h>
#include	<string.h>

extern help(char *);

/**************************g**e**t**o**p**t****************************/
int 	argci=1;
int 	argcj=0;

#define	NULLP	'\0'

opterr( c, cmd )
char	c;
char	*cmd;
{	fputs( "このオプションなに? : ",stderr);
	fputc( c ,stderr);fputc( '\n',stderr);
	
	help( cmd );
	exit(1);
}
void	delopt(argv,i)
char	**argv;
int 	i;
{
	if(  argv[i] != NULLP )
		*argv[i]  = NULLP;
	argcj=0;
}

int 	getopt(argc,argv,options)
int 	argc;
char	**argv,*options;
{
	char	c;
	
	for( ; argci<argc ; argci++ )
	{	/* ファイル名と思われるものは飛ばす */
		if( argv[argci][0]==NULLP || argv[argci][0] != '-')	continue;
		if( argv[argci][1]=='-' )	continue;	/* '-'で始まるファイル名 */
		
		if( (c=argv[argci][++argcj])==NULLP )
		{
			delopt( argv,argci );	/* いらなくなったら消す */
			continue;
		}
		if( c>='A' && c<='Z' )	c += 0x20;	/* ('a'-'A')==0x20 */
		
		if( strchr( options, c )==NULLP )	opterr( c, *argv );
		
		return c;
	}
	
	return NULLP;
}
/**************************g**e**t**o**p**t****************************/

