⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ini.h

📁 有点类似于Windows的扫雷小游戏
💻 H
字号:
# if !defined( __INI_H )
# define __INI_H

# if !defined( __STDIO_H )
# include <stdio.h>
# endif  
# if !defined( __STRING_H )
# include <string.h>
# endif

char ini_filename[50];

void SetIniFileName(char *fn)
{
 strcpy(ini_filename,fn);
}
int ReadString(FILE *fp,char *f)
{
 int i=0;
 char ch=0;
 for(i=0;i<100;i++)
  *(f+i)='\0';
 i=0;
 ch=fgetc(fp);
 while(ch!=10)
   {
    if(ch!=10&&ch!=13)
     *(f+i)=ch;
    if(feof(fp))return 0;
    ch=fgetc(fp);
    i++;
    }
 return 1;
}
int Search(char *s,int n,char c)
{int i=0,j=0;
 while(*(s+i)!='\0')
  {if(*(s+i)==c)j++;
   if(j==n)return i;
   i++;
   }
 return -1;
}
char *ReadINI(char *name)
{
  FILE *INI;
  char buffer[100],tail[100]={'\0'},head[100]={'\0'};
  int i,j;
  INI=fopen(ini_filename,"rb");
  if(INI==NULL)
   {printf("Can not open file %s!\n",ini_filename);exit(1);}
    
  rewind(INI);
  while(ReadString(INI,buffer))
   {
    if(buffer[0]!=';')
      {
       j=Search(buffer,1,'=');
       if(j>=0)
	{
	 for(i=0;i<j;i++)
	  head[i]=buffer[i];
	 head[j]='\0';
	 for(i=j+1;i<strlen(buffer)+1;i++)
	  tail[i-j-1]=buffer[i];
	}
       if(strcmp(name,head)==0)
	{fclose(INI);return tail;}
      }
   }/*while*/
 fclose(INI);
 return NULL;
}
char ReadINI_char(char *name)
{
 char *p;
 p=ReadINI(name);
 return p[0];
}
int ReadINI_int(char *name)
{
 return  atoi(ReadINI(name));
}
char *ReadINI_string(char *name)
{
 return ReadINI(name);
}
long ReadINI_long(char *name)
{
 return atol(ReadINI(name));
}
double ReadINI_double(char *name)
{
 return atof(ReadINI(name));
}
# endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -