Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поиск значений переменных внутри файла, Очень нужна помощь! 
V
    Опции темы
ReGeDiT
Дата 11.7.2006, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 4.7.2006
Где: Пущино на Оке

Репутация: нет
Всего: нет



ptr у меня все твои комментарии на непонятной кодировке типа "Аоеоаоеоаеоаоееаоеа" (не KOI8-R) smile в прошлой программе

ошибка вот эта
Код

    void *ptr = NULL;//èñïîëüçóåòñÿ äëÿ ïðîñòîòû çàïèñè
    char *buf = NULL;//áóôåð äëÿ ÷òåíèÿ

smile а надо 
Код

    char *ptr = NULL;//èñïîëüçóåòñÿ äëÿ ïðîñòîòû çàïèñè
    char *buf = NULL;//áóôåð äëÿ ÷òåíèÿ


также я сделал всё как ты сказал, всё компилируется... но в винде потом выскакивает критическая ошибка smile
Код

/***************************
** Модуль проверки файлов **
***************************/

#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>

#define BUF_SIZE 256
#define NAME_LEN 99

char* getline(FILE* stream)
{
    int cur_size=0;
    char* buf=(char*)malloc(sizeof(char)*BUF_SIZE);
    if (NULL==buf) { fprintf(stderr,"Couldn't allocate memory!");
             return NULL;
           }
    while(fgets(&buf[cur_size],BUF_SIZE,stream))
      { if ('\n'==buf[strlen(buf)-1])
      {
       buf[strlen(buf)-1]='\0';
       return buf;
      }
    cur_size+=BUF_SIZE-1;
    buf=(char*)realloc(buf,cur_size+BUF_SIZE);
    if (NULL==buf)
      {
       fprintf(stderr,"Couldn't allocate memory!");
       return NULL;
      }
      }
    return buf;
}

/***************************************
** Проверка items.scp на правильность **
***************************************/

FILE *fp, *lg;
int vl0 = 0, vl1 = 0, vl2 = 0, dif = 0, i = 0, nmb = 0, id = 0;
char st[99], *nm;
char* buf = NULL;

void main(void)
{
lg = fopen("log.log","wt");
fprintf(lg,"WoWCHK v0.2 Auto-Generated LOG-File\n\n~items.scp~\n\nID : Item Number\nName : Item Name\nBP : Buy Price\nSP : Sell Price\nDF : Difference\nVR : Variable\n\n");
fclose(lg);
fp = fopen("items.scp","rt");
do {
/**************************************************************************************************/
    buf = getline(fp);
/**************************************************************************************************/
    if (strncmp(buf,"[item",5)==0) { sscanf(buf,"[item %d]",&vl0); };
    printf("[item %d]\n",vl0);
/**************************************************************************************************/
    if (strncmp(buf,"name=",5)==0) { strncpy(nm,strstr(buf,"=")+1,99); };
    printf("name=%s]\n",nm);
/**************************************************************************************************/
    if (strncmp(buf,"buyprice=",9)==0)   {  // тут всё работает 100%
    vl1 = atoi(strstr(buf,"=")+1);          // тут всё работает 100%
    printf("buyprice=%d\n",vl1);        }; // тут всё работает 100%
/**************************************************************************************************/
    if (strncmp(buf,"sellprice=",10)==0) { // Работает 100%
    vl2 = atoi(strstr(buf,"=")+1);
    printf("sellprice=%d\n",vl2);
    dif = vl2-vl1;
    if ((vl1==vl2)&&(vl1!=1)&&(vl2!=1)) { printf("SELLPRICE == BUYPRICE! ADDED TO LOG!\n");
                                          lg = fopen("log.log","at");
                                          fprintf(lg,"SELLPRICE == BUYPRICE || IN = %d %s BP = %d SP = %d DF = %d\n",vl0,nm,vl1,vl2,dif);
                                          fclose(lg);
                                        };
    if (vl2>vl1) { printf("SELLPRICE >> BUYPRICE! ADDED TO LOG!\n");
               lg = fopen("log.log","at");
               fprintf(lg,"SELLPRICE >> BUYPRICE || IN = %d %s BP = %d SP = %d DF = %d\n",vl0,nm,vl1,vl2,dif);
               fclose(lg);
             };
                                };
/**************************************************************************************************/
    if ((strncmp(buf,"bonding=",8)!=0)&& // Работает 100%
        (strncmp(buf,"buyprice=",9)!=0)&&
        (strncmp(buf,"class=",6)!=0)&&
        (strncmp(buf,"classes=",8)!=0)&&
        (strncmp(buf,"description=",12)!=0)&&
        (strncmp(buf,"language=",9)!=0)&&
        (strncmp(buf,"level=",6)!=0)&&
        (strncmp(buf,"material=",9)!=0)&&
        (strncmp(buf,"maxcount=",9)!=0)&&
        (strncmp(buf,"model=",6)!=0)&&
        (strncmp(buf,"name=",5)!=0)&&
        (strncmp(buf,"pagetext=",9)!=0)&&
        (strncmp(buf,"quality=",8)!=0)&&
        (strncmp(buf,"races=",6)!=0)&&
        (strncmp(buf,"reqlevel=",9)!=0)&&
        (strncmp(buf,"sellprice=",10)!=0)&&
        (strncmp(buf,"//",2)!=0)&&
        (strncmp(buf,"#include",8)!=0)&&
        (strncmp(buf,"[item",5)!=0)&&
        (strncmp(buf,"damage=",7)!=0)&&
        (strncmp(buf,"delay=",6)!=0)&&
        (strncmp(buf,"durability=",11)!=0)&&
        (strncmp(buf,"inventorytype=",14)!=0)&&
        (strncmp(buf,"sheath=",7)!=0)&&
        (strncmp(buf,"resistance1=",12)!=0)&&
        (strncmp(buf,"resistance2=",12)!=0)&&
        (strncmp(buf,"resistance3=",12)!=0)&&
        (strncmp(buf,"resistance4=",12)!=0)&&
        (strncmp(buf,"resistance5=",12)!=0)&&
        (strncmp(buf,"resistance6=",12)!=0)&&
        (strncmp(buf,"resistance7=",12)!=0)&&
        (strncmp(buf,"resistances=",12)!=0)&&                    // ???
        (strncmp(buf,"bonus=",6)!=0)&&
        (strncmp(buf,"questid=",8)!=0)&&
        (strncmp(buf,"block=",6)!=0)&&
        (strncmp(buf,"part=",5)!=0)&&
        (strncmp(buf,"flags=",6)!=0)&&
        (strncmp(buf,"extra=",6)!=0)&&                           // ???
        (strncmp(buf,"variation=",10)!=0)&&
        (strncmp(buf,"containerslots=",15)!=0)&&
        (strncmp(buf,"subclass=",9)!=0)&&
        (strncmp(buf,"spell=",6)!=0)&&
        (strncmp(buf,"skill=",6)!=0)&&
        (strncmp(buf,"skillrank=",10)!=0)&&
        (strncmp(buf,"questscript=",12)!=0)&&
        (strncmp(buf,"starts_quests=",14)!=0)&&                  // 1 ?
        (strncmp(buf,"startquest=",11)!=0)&&                     // 1 ?
        (strncmp(buf,"ammotype=",9)!=0)&&                        // ???
        (strncmp(buf,"oldclass=",9)!=0)&&                        // ???
        (strncmp(buf,"pagematerial=",13)!=0)&&                   // ???
        (strncmp(buf,"loot=",5)!=0)&&
        (strncmp(buf,"lockid=",7)!=0)&&                          // ???
        (strncmp(buf,"finishes_quests=",16)!=0)&&
        (strncmp(buf,"set=",4)!=0)&&
        (strncmp(buf,"questid2=",9)!=0)&&                        // ???
        (strncmp(buf,"spellreq=",9)!=0)&&
        (strncmp(buf,"pvprankreq=",11)!=0)&&
        (strncmp(buf,"stackable=",10)!=0)) { lg = fopen("log.log","at");
                                             printf("UNKNOWN      VARIABLE! ADDED TO LOG!\n");
                                             fprintf(lg,"UNKNOWN      VARIABLE || IN = %d %s VR = %s\n",vl0,nm,st);
                                             fclose(lg);
                                           };
/**************************************************************************************************/
    free(buf);
    if (feof(fp)) { printf("All File Was Scanned [EOF]...\n");
                    lg = fopen("log.log","at");
                    fprintf(lg,"\n\nAll File Was Scanned [EOF]...");
                    fclose(lg);
                  };
   }
while (!feof(fp));
fclose(fp);
}

/*********************************************************************
** ThX to ptr, Rockie, Олег4, Fedor, Fazil6 and all who i forgot ^^ **
*********************************************************************/
 
PM MAIL WWW ICQ   Вверх
ptr
Дата 11.7.2006, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 661
Регистрация: 31.5.2006
Где: Новосибирск

Репутация: 1
Всего: 14



Странно, но у меня все комментарии отображаются нормально (win1251, koi8-r).

Возможно, ты и прав лучше char* (как-то просмотрел).

Цитата(ReGeDiT @  11.7.2006,  14:33 Найти цитируемый пост)
также я сделал всё как ты сказал, всё компилируется... но в винде потом выскакивает критическая ошибка smile

А кто будет выделять память под nm? Поменяй char *nm, например, на char nm[100]. 


--------------------
Единственный способ определить границы возможного - это выйти за эти границы, в невозможное.
Артур Кларк.
PM MAIL ICQ   Вверх
ReGeDiT
Дата 11.7.2006, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 4.7.2006
Где: Пущино на Оке

Репутация: нет
Всего: нет



огромное спасибо! smile правда теперь у меня всё стало Unknown Variable ^^

log.log:
Код

UNKNOWN      VARIABLE || IN = 0  VR = 
UNKNOWN      VARIABLE || IN = 0  VR = 
UNKNOWN      VARIABLE || IN = 0  VR = 
UNKNOWN      VARIABLE || IN = 0  VR = 
UNKNOWN      VARIABLE || IN = 0  VR = 
UNKNOWN      VARIABLE || IN = 0  VR = 
UNKNOWN      VARIABLE || IN = 1 Welcome Note VR = 
UNKNOWN      VARIABLE || IN = 2 1 Silver! VR = 
UNKNOWN      VARIABLE || IN = 3 10 Silver! VR = 
UNKNOWN      VARIABLE || IN = 4 1 Gold! VR = 
UNKNOWN      VARIABLE || IN = 5 10 Gold! VR = 
UNKNOWN      VARIABLE || IN = 6 100 Gold! VR = 
UNKNOWN      VARIABLE || IN = 7 1000 Gold! VR = 
UNKNOWN      VARIABLE || IN = 21 Purple Token VR = 
UNKNOWN      VARIABLE || IN = 22 Green Token VR = 
UNKNOWN      VARIABLE || IN = 23 Yellow Token VR = 
UNKNOWN      VARIABLE || IN = 24 White Token VR = 
UNKNOWN      VARIABLE || IN = 25 Worn Shortsword VR = 
UNKNOWN      VARIABLE || IN = 35 Bent Staff VR = 
UNKNOWN      VARIABLE || IN = 36 Worn Mace VR = 
UNKNOWN      VARIABLE || IN = 37 Worn Axe VR = 
UNKNOWN      VARIABLE || IN = 38 Recruit's Shirt VR = 
UNKNOWN      VARIABLE || IN = 39 Recruit's Pants VR = 
UNKNOWN      VARIABLE || IN = 40 Recruit's Boots VR = 
UNKNOWN      VARIABLE || IN = 43 Squire's Boots VR = 
UNKNOWN      VARIABLE || IN = 44 Squire's Pants VR = 
UNKNOWN      VARIABLE || IN = 45 Squire's Shirt VR = 
UNKNOWN      VARIABLE || IN = 47 Footpad's Shoes VR = 
UNKNOWN      VARIABLE || IN = 48 Footpad's Pants VR = 
UNKNOWN      VARIABLE || IN = 49 Footpad's Shirt VR = 
UNKNOWN      VARIABLE || IN = 51 Neophyte's Boots VR = 
UNKNOWN      VARIABLE || IN = 52 Neophyte's Pants VR = 
UNKNOWN      VARIABLE || IN = 53 Neophyte's Shirt VR = 
UNKNOWN      VARIABLE || IN = 55 Apprentice's Boots VR = 
UNKNOWN      VARIABLE || IN = 56 Apprentice's Robe VR = 
UNKNOWN      VARIABLE || IN = 57 Acolyte's Robe VR = 
UNKNOWN      VARIABLE || IN = 59 Acolyte's Shoes VR = 
UNKNOWN      VARIABLE || IN = 60 Layered Tunic VR = 
UNKNOWN      VARIABLE || IN = 61 Dwarven Leather Pants VR = 
UNKNOWN      VARIABLE || IN = 79 Dwarven Cloth Britches VR = 
UNKNOWN      VARIABLE || IN = 80 Soft Fur-lined Shoes VR = 
UNKNOWN      VARIABLE || IN = 85 Dirty Leather Vest VR = 
UNKNOWN      VARIABLE || IN = 117 Tough Jerky VR = 
UNKNOWN      VARIABLE || IN = 118 Minor Healing Potion VR = 
UNKNOWN      VARIABLE || IN = 120 Thug Pants VR = 
UNKNOWN      VARIABLE || IN = 121 Thug Boots VR = 
UNKNOWN      VARIABLE || IN = 127 Trapper's Shirt VR = 


этот кусок кода проверяет поля, если есть какие-то другие поля кроме этих, он должен записывать в лог другое (неправильное) поле...
раньше при fscanf(fp,"%s",&st) всё работало, с новой же конструкцией это не работает smile может всё-таки надо делать и fscanf? если нет подскажи как лучше...

Код

    if ((strncmp(buf,"bonding=",8)!=0)&&
        (strncmp(buf,"buyprice=",9)!=0)&&
        (strncmp(buf,"class=",6)!=0)&&
        (strncmp(buf,"classes=",8)!=0)&&
        (strncmp(buf,"description=",12)!=0)&&
        (strncmp(buf,"language=",9)!=0)&&
        (strncmp(buf,"level=",6)!=0)&&
        (strncmp(buf,"material=",9)!=0)&&
        (strncmp(buf,"maxcount=",9)!=0)&&
        (strncmp(buf,"model=",6)!=0)&&
        (strncmp(buf,"name=",5)!=0)&&
        (strncmp(buf,"pagetext=",9)!=0)&&
        (strncmp(buf,"quality=",8)!=0)&&
        (strncmp(buf,"races=",6)!=0)&&
        (strncmp(buf,"reqlevel=",9)!=0)&&
        (strncmp(buf,"sellprice=",10)!=0)&&
        (strncmp(buf,"//",2)!=0)&&
        (strncmp(buf,"#include",8)!=0)&&
        (strncmp(buf,"[item",5)!=0)&&
        (strncmp(buf,"damage=",7)!=0)&&
        (strncmp(buf,"delay=",6)!=0)&&
        (strncmp(buf,"durability=",11)!=0)&&
        (strncmp(buf,"inventorytype=",14)!=0)&&
        (strncmp(buf,"sheath=",7)!=0)&&
        (strncmp(buf,"resistance1=",12)!=0)&&
        (strncmp(buf,"resistance2=",12)!=0)&&
        (strncmp(buf,"resistance3=",12)!=0)&&
        (strncmp(buf,"resistance4=",12)!=0)&&
        (strncmp(buf,"resistance5=",12)!=0)&&
        (strncmp(buf,"resistance6=",12)!=0)&&
        (strncmp(buf,"resistance7=",12)!=0)&&
        (strncmp(buf,"resistances=",12)!=0)&&                    // ???
        (strncmp(buf,"bonus=",6)!=0)&&
        (strncmp(buf,"questid=",8)!=0)&&
        (strncmp(buf,"block=",6)!=0)&&
        (strncmp(buf,"part=",5)!=0)&&
        (strncmp(buf,"flags=",6)!=0)&&
        (strncmp(buf,"extra=",6)!=0)&&                           // ???
        (strncmp(buf,"variation=",10)!=0)&&
        (strncmp(buf,"containerslots=",15)!=0)&&
        (strncmp(buf,"subclass=",9)!=0)&&
        (strncmp(buf,"spell=",6)!=0)&&
        (strncmp(buf,"skill=",6)!=0)&&
        (strncmp(buf,"skillrank=",10)!=0)&&
        (strncmp(buf,"questscript=",12)!=0)&&
        (strncmp(buf,"starts_quests=",14)!=0)&&                  // 1 ?
        (strncmp(buf,"startquest=",11)!=0)&&                     // 1 ?
        (strncmp(buf,"ammotype=",9)!=0)&&                        // ???
        (strncmp(buf,"oldclass=",9)!=0)&&                        // ???
        (strncmp(buf,"pagematerial=",13)!=0)&&                   // ???
        (strncmp(buf,"loot=",5)!=0)&&
        (strncmp(buf,"lockid=",7)!=0)&&                          // ???
        (strncmp(buf,"finishes_quests=",16)!=0)&&
        (strncmp(buf,"set=",4)!=0)&&
        (strncmp(buf,"questid2=",9)!=0)&&                        // ???
        (strncmp(buf,"spellreq=",9)!=0)&&
        (strncmp(buf,"pvprankreq=",11)!=0)&&
        (strncmp(buf,"stackable=",10)!=0)) { lg = fopen("log.log","at");
                                             printf("UNKNOWN      VARIABLE! ADDED TO LOG!\n");
                                             fprintf(lg,"UNKNOWN      VARIABLE || ID = %d NM = %s VR = %s\n",vl0,nm,st);
                                             fclose(lg);
                                           };
 
PM MAIL WWW ICQ   Вверх
ptr
Дата 11.7.2006, 15:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 661
Регистрация: 31.5.2006
Где: Новосибирск

Репутация: 1
Всего: 14



Что-то мне с предыдущим файлом такого повторить не удалось.
Кстати st тебе не нужен. 

Это сообщение отредактировал(а) ptr - 11.7.2006, 15:45


--------------------
Единственный способ определить границы возможного - это выйти за эти границы, в невозможное.
Артур Кларк.
PM MAIL ICQ   Вверх
ReGeDiT
Дата 11.7.2006, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 4.7.2006
Где: Пущино на Оке

Репутация: нет
Всего: нет



а что мне делать то? smile))))

было так, работало
Код

do {
    fscanf(fp,"%s",&st);
...
    if ((strncmp(st,"bonding=",8)!=0)&& // Работает 100%
        (strncmp(st,"buyprice=",9)!=0)&&
        (strncmp(st,"class=",6)!=0)&&
        (strncmp(st,"classes=",8)!=0)&&
        (strncmp(st,"description=",12)!=0)&&
        (strncmp(st,"language=",9)!=0)&&
        (strncmp(st,"level=",6)!=0)&&
        (strncmp(st,"material=",9)!=0)&&
        (strncmp(st,"maxcount=",9)!=0)&&
        (strncmp(st,"model=",6)!=0)&&
        (strncmp(st,"name=",5)!=0)&&
        (strncmp(st,"pagetext=",9)!=0)&&
        (strncmp(st,"quality=",8)!=0)&&
        (strncmp(st,"races=",6)!=0)&&
        (strncmp(st,"reqlevel=",9)!=0)&&
        (strncmp(st,"sellprice=",10)!=0)&&
        (strncmp(st,"//",2)!=0)&&
        (strncmp(st,"#include",8)!=0)&&
        (strncmp(st,"[item",5)!=0)&&
        (strncmp(st,"damage=",7)!=0)&&
        (strncmp(st,"delay=",6)!=0)&&
        (strncmp(st,"durability=",11)!=0)&&
        (strncmp(st,"inventorytype=",14)!=0)&&
        (strncmp(st,"sheath=",7)!=0)&&
        (strncmp(st,"resistance1=",12)!=0)&&
        (strncmp(st,"resistance2=",12)!=0)&&
        (strncmp(st,"resistance3=",12)!=0)&&
        (strncmp(st,"resistance4=",12)!=0)&&
        (strncmp(st,"resistance5=",12)!=0)&&
        (strncmp(st,"resistance6=",12)!=0)&&
        (strncmp(st,"resistance7=",12)!=0)&&
        (strncmp(st,"resistances=",12)!=0)&&                    // ???
        (strncmp(st,"bonus=",6)!=0)&&
        (strncmp(st,"questid=",8)!=0)&&
        (strncmp(st,"block=",6)!=0)&&
        (strncmp(st,"part=",5)!=0)&&
        (strncmp(st,"flags=",6)!=0)&&
        (strncmp(st,"extra=",6)!=0)&&                           // ???
        (strncmp(st,"variation=",10)!=0)&&
        (strncmp(st,"containerslots=",15)!=0)&&
        (strncmp(st,"subclass=",9)!=0)&&
        (strncmp(st,"spell=",6)!=0)&&
        (strncmp(st,"skill=",6)!=0)&&
        (strncmp(st,"skillrank=",10)!=0)&&
        (strncmp(st,"questscript=",12)!=0)&&
        (strncmp(st,"starts_quests=",14)!=0)&&                  // 1 ?
        (strncmp(st,"startquest=",11)!=0)&&                     // 1 ?
        (strncmp(st,"ammotype=",9)!=0)&&                        // ???
        (strncmp(st,"oldclass=",9)!=0)&&                        // ???
        (strncmp(st,"pagematerial=",13)!=0)&&                   // ???
        (strncmp(st,"loot=",5)!=0)&&
        (strncmp(st,"lockid=",7)!=0)&&                          // ???
        (strncmp(st,"finishes_quests=",16)!=0)&&
        (strncmp(st,"set=",4)!=0)&&
        (strncmp(st,"questid2=",9)!=0)&&                        // ???
        (strncmp(st,"spellreq=",9)!=0)&&
        (strncmp(st,"pvprankreq=",11)!=0)&&
        (strncmp(st,"stackable=",10)!=0)) { lg = fopen("log.log","at");
                        printf("UNKNOWN      VARIABLE! ADDED TO LOG!\n");
                        fprintf(lg,"IN = %d %s VR = %s\n",vl0,nm,st);
                            fclose(lg);
                          };
...


теперь так, и не работает
Код

do {
    buf = getline(fp);
...
if ((strncmp(buf,"bonding=",8)!=0)&&
        (strncmp(buf,"buyprice=",9)!=0)&&
        (strncmp(buf,"class=",6)!=0)&&
        (strncmp(buf,"classes=",8)!=0)&&
        (strncmp(buf,"description=",12)!=0)&&
        (strncmp(buf,"language=",9)!=0)&&
        (strncmp(buf,"level=",6)!=0)&&
        (strncmp(buf,"material=",9)!=0)&&
        (strncmp(buf,"maxcount=",9)!=0)&&
        (strncmp(buf,"model=",6)!=0)&&
        (strncmp(buf,"name=",5)!=0)&&
        (strncmp(buf,"pagetext=",9)!=0)&&
        (strncmp(buf,"quality=",8)!=0)&&
        (strncmp(buf,"races=",6)!=0)&&
        (strncmp(buf,"reqlevel=",9)!=0)&&
        (strncmp(buf,"sellprice=",10)!=0)&&
        (strncmp(buf,"//",2)!=0)&&
        (strncmp(buf,"#include",8)!=0)&&
        (strncmp(buf,"[item",5)!=0)&&
        (strncmp(buf,"damage=",7)!=0)&&
        (strncmp(buf,"delay=",6)!=0)&&
        (strncmp(buf,"durability=",11)!=0)&&
        (strncmp(buf,"inventorytype=",14)!=0)&&
        (strncmp(buf,"sheath=",7)!=0)&&
        (strncmp(buf,"resistance1=",12)!=0)&&
        (strncmp(buf,"resistance2=",12)!=0)&&
        (strncmp(buf,"resistance3=",12)!=0)&&
        (strncmp(buf,"resistance4=",12)!=0)&&
        (strncmp(buf,"resistance5=",12)!=0)&&
        (strncmp(buf,"resistance6=",12)!=0)&&
        (strncmp(buf,"resistance7=",12)!=0)&&
        (strncmp(buf,"resistances=",12)!=0)&&                    // ???
        (strncmp(buf,"bonus=",6)!=0)&&
        (strncmp(buf,"questid=",8)!=0)&&
        (strncmp(buf,"block=",6)!=0)&&
        (strncmp(buf,"part=",5)!=0)&&
        (strncmp(buf,"flags=",6)!=0)&&
        (strncmp(buf,"extra=",6)!=0)&&                           // ???
        (strncmp(buf,"variation=",10)!=0)&&
        (strncmp(buf,"containerslots=",15)!=0)&&
        (strncmp(buf,"subclass=",9)!=0)&&
        (strncmp(buf,"spell=",6)!=0)&&
        (strncmp(buf,"skill=",6)!=0)&&
        (strncmp(buf,"skillrank=",10)!=0)&&
        (strncmp(buf,"questscript=",12)!=0)&&
        (strncmp(buf,"starts_quests=",14)!=0)&&                  // 1 ?
        (strncmp(buf,"startquest=",11)!=0)&&                     // 1 ?
        (strncmp(buf,"ammotype=",9)!=0)&&                        // ???
        (strncmp(buf,"oldclass=",9)!=0)&&                        // ???
        (strncmp(buf,"pagematerial=",13)!=0)&&                   // ???
        (strncmp(buf,"loot=",5)!=0)&&
        (strncmp(buf,"lockid=",7)!=0)&&                          // ???
        (strncmp(buf,"finishes_quests=",16)!=0)&&
        (strncmp(buf,"set=",4)!=0)&&
        (strncmp(buf,"questid2=",9)!=0)&&                        // ???
        (strncmp(buf,"spellreq=",9)!=0)&&
        (strncmp(buf,"pvprankreq=",11)!=0)&&
        (strncmp(buf,"stackable=",10)!=0)) { lg = fopen("log.log","at");
                                             printf("UNKNOWN      VARIABLE! ADDED TO LOG!\n");
                                             fprintf(lg,"UNKNOWN      VARIABLE || [item %d] NM=[%s] VR=%s\n",vl0,nm,buf);
                                             fclose(lg);
                                           };
...



в чём ошибка? или проблема? smile 
PM MAIL WWW ICQ   Вверх
bsa
Дата 11.7.2006, 17:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Выведи на экран значение buf!!!
 

Это сообщение отредактировал(а) bsa - 11.7.2006, 17:52
PM   Вверх
ptr
Дата 11.7.2006, 18:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 661
Регистрация: 31.5.2006
Где: Новосибирск

Репутация: 1
Всего: 14



ReGeDiT, выложи всю программу и файл items.scp, а то у меня старая программа со старым файлом нормально работает.  

Это сообщение отредактировал(а) ptr - 11.7.2006, 18:03


--------------------
Единственный способ определить границы возможного - это выйти за эти границы, в невозможное.
Артур Кларк.
PM MAIL ICQ   Вверх
ReGeDiT
Дата 11.7.2006, 18:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 4.7.2006
Где: Пущино на Оке

Репутация: нет
Всего: нет



Код

/***************************
** Модуль проверки файлов **
***************************/

#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>

#define BUF_SIZE 256

char* getline(FILE* stream)
{
    int cur_size=0;
    char* buf=(char*)malloc(sizeof(char)*BUF_SIZE);
    if (NULL==buf) { fprintf(stderr,"Couldn't allocate memory!");
             return NULL;
           }
    while(fgets(&buf[cur_size],BUF_SIZE,stream))
      { if ('\n'==buf[strlen(buf)-1])
      {
       buf[strlen(buf)-1]='\0';
       return buf;
      }
    cur_size+=BUF_SIZE-1;
    buf=(char*)realloc(buf,cur_size+BUF_SIZE);
    if (NULL==buf)
      {
       fprintf(stderr,"Couldn't allocate memory!");
       return NULL;
      }
      }
    return buf;
}

/***************************************
** Проверка items.scp на правильность **
***************************************/

FILE *fp, *lg;
int vl0 = 0, vl1 = 0, vl2 = 0, dif = 0, nmb = 0, id = 0;
char nm[100];
char ck[100];
char *buf = NULL;

void main(void)
{
lg = fopen("log.log","wt");
fprintf(lg,"WoWCHK v0.3 Auto-Generated LOG-File\n\n[items.scp]\n\nNM : Item Name\nBP : Buy Price\nSP : Sell Price\nDF : Difference\nVR : Variable\n\n");
fclose(lg);
fp = fopen("items.scp","rt");
do {
    buf = getline(fp);
    if (strncmp(buf,"[item",5)==0) { sscanf(buf,"[item %d]",&vl0); };
    printf("[item %d]\n",vl0);
    if (strncmp(buf,"name=",5)==0) { strncpy(nm,strstr(buf,"=")+1,99); };
    printf("name=%s]\n",nm);
    if (strncmp(buf,"buyprice=",9)==0)   {  // тут всё работает 100%
    vl1 = atoi(strstr(buf,"=")+1);          // тут всё работает 100%
    printf("buyprice=%d\n",vl1);        }; // тут всё работает 100%
    if (strncmp(buf,"sellprice=",10)==0) { // Работает 100%
    vl2 = atoi(strstr(buf,"=")+1);
    printf("sellprice=%d\n",vl2);
    dif = vl2-vl1;
    if ((vl1==vl2)&&(vl1!=1)&&(vl2!=1)) { printf("SELLPRICE == BUYPRICE! ADDED TO LOG!\n");
                                          lg = fopen("log.log","at");
                                          fprintf(lg,"SELLPRICE == BUYPRICE || [item %d] NM=[%s] BP=%d SP=%d DF=%d\n",vl0,nm,vl1,vl2,dif);
                                          fclose(lg);
                                        };
    if (vl2>vl1) { printf("SELLPRICE >> BUYPRICE! ADDED TO LOG!\n");
                   lg = fopen("log.log","at");
                   fprintf(lg,"SELLPRICE >> BUYPRICE || [item %d] NM=[%s] BP=%d SP=%d DF=%d\n",vl0,nm,vl1,vl2,dif);
                   fclose(lg);
                 };
                                };
/*    if ((strncmp(buf,"bonding=",8)!=0)&&
        (strncmp(buf,"buyprice=",9)!=0)&&
        (strncmp(buf,"class=",6)!=0)&&
        (strncmp(buf,"classes=",8)!=0)&&
        (strncmp(buf,"description=",12)!=0)&&
        (strncmp(buf,"language=",9)!=0)&&
        (strncmp(buf,"level=",6)!=0)&&
        (strncmp(buf,"material=",9)!=0)&&
        (strncmp(buf,"maxcount=",9)!=0)&&
        (strncmp(buf,"model=",6)!=0)&&
        (strncmp(buf,"name=",5)!=0)&&
        (strncmp(buf,"pagetext=",9)!=0)&&
        (strncmp(buf,"quality=",8)!=0)&&
        (strncmp(buf,"races=",6)!=0)&&
        (strncmp(buf,"reqlevel=",9)!=0)&&
        (strncmp(buf,"sellprice=",10)!=0)&&
        (strncmp(buf,"//",2)!=0)&&
        (strncmp(buf,"#include",8)!=0)&&
        (strncmp(buf,"[item",5)!=0)&&
        (strncmp(buf,"damage=",7)!=0)&&
        (strncmp(buf,"delay=",6)!=0)&&
        (strncmp(buf,"durability=",11)!=0)&&
        (strncmp(buf,"inventorytype=",14)!=0)&&
        (strncmp(buf,"sheath=",7)!=0)&&
        (strncmp(buf,"resistance1=",12)!=0)&&
        (strncmp(buf,"resistance2=",12)!=0)&&
        (strncmp(buf,"resistance3=",12)!=0)&&
        (strncmp(buf,"resistance4=",12)!=0)&&
        (strncmp(buf,"resistance5=",12)!=0)&&
        (strncmp(buf,"resistance6=",12)!=0)&&
        (strncmp(buf,"resistance7=",12)!=0)&&
        (strncmp(buf,"resistances=",12)!=0)&&                    // ???
        (strncmp(buf,"bonus=",6)!=0)&&
        (strncmp(buf,"questid=",8)!=0)&&
        (strncmp(buf,"block=",6)!=0)&&
        (strncmp(buf,"part=",5)!=0)&&
        (strncmp(buf,"flags=",6)!=0)&&
        (strncmp(buf,"extra=",6)!=0)&&                           // ???
        (strncmp(buf,"variation=",10)!=0)&&
        (strncmp(buf,"containerslots=",15)!=0)&&
        (strncmp(buf,"subclass=",9)!=0)&&
        (strncmp(buf,"spell=",6)!=0)&&
        (strncmp(buf,"skill=",6)!=0)&&
        (strncmp(buf,"skillrank=",10)!=0)&&
        (strncmp(buf,"questscript=",12)!=0)&&
        (strncmp(buf,"starts_quests=",14)!=0)&&                  // 1 ?
        (strncmp(buf,"startquest=",11)!=0)&&                     // 1 ?
        (strncmp(buf,"ammotype=",9)!=0)&&                        // ???
        (strncmp(buf,"oldclass=",9)!=0)&&                        // ???
        (strncmp(buf,"pagematerial=",13)!=0)&&                   // ???
        (strncmp(buf,"loot=",5)!=0)&&
        (strncmp(buf,"lockid=",7)!=0)&&                          // ???
        (strncmp(buf,"finishes_quests=",16)!=0)&&
        (strncmp(buf,"set=",4)!=0)&&
        (strncmp(buf,"questid2=",9)!=0)&&                        // ???
        (strncmp(buf,"spellreq=",9)!=0)&&
        (strncmp(buf,"pvprankreq=",11)!=0)&&
        (strncmp(buf,"stackable=",10)!=0)) { lg = fopen("log.log","at");
                                             printf("UNKNOWN      VARIABLE! ADDED TO LOG!\n");
                                             fprintf(lg,"UNKNOWN      VARIABLE || [item %d] NM=[%s] VR=%s\n",vl0,nm,buf);
                                             fclose(lg);
                                           };
*/    free(buf);
    if (feof(fp)) { printf("All File Was Scanned [EOF]...\n");
                    lg = fopen("log.log","at");
                    fprintf(lg,"\nAll File Was Scanned [EOF]...");
                    fclose(lg);
                  };
   }
while (!feof(fp));
fclose(fp);
}

/*********************************************************************
** ThX to ptr, Rockie, Олег4, Fedor, Fazil6 and all who i forgot ^^ **
** Especially thx to ptr, for his help                              **
*********************************************************************/


items.scp (очень большой, в оригинале 4.5 мегабайта)
Код

[item 1]
bonding=4
buyprice=300
class=12
classes=07FF
description=Welcome to World of Darkness.
language=1
level=1
material=-1
maxcount=1
model=5567
name=Welcome Note
pagetext=1
quality=1
races=0FF
reqlevel=1
sellprice=100
stackable=1

[item 2]
quality=0
bonding=4
buyprice=300
class=12
classes=07FF
description=If you sell this item, you get 1 Silver for it!
level=1
material=0
model=29842
name=1 Silver!
races=0FF
reqlevel=1
sellprice=100

[item 3]
quality=0
bonding=4
buyprice=3000
class=12
classes=07FF
description=If you sell this item, you get 10 Silver for it!
level=1
material=0
model=29842
name=10 Silver!
races=0FF
reqlevel=1
sellprice=1000

[item 4]
quality=0
bonding=4
buyprice=30000
class=12
classes=07FF
description=If you sell this item, you get 1 Gold for it!
level=1
material=0
model=11766
name=1 Gold!
races=0FF
reqlevel=1
sellprice=10000

[item 5]
quality=0
bonding=4
buyprice=300000
class=12
classes=07FF
description=If you sell this item, you get 10 Gold for it!
level=1
material=0
model=11766
name=10 Gold!
races=0FF
reqlevel=1
sellprice=100000

[item 6]
quality=0
bonding=4
buyprice=3000000
class=12
classes=07FF
description=If you sell this item, you get 100 Gold for it!
level=1
material=0
model=11766
name=100 Gold!
races=0FF
reqlevel=1
sellprice=1000000

[item 7]
quality=0
bonding=4
buyprice=30000000
class=12
classes=07FF
description=If you sell this item, you get 1000 Gold for it!
level=1
material=0
model=11766
name=1000 Gold!
races=0FF
reqlevel=1
sellprice=10000000

[item 21]
bonding=4
buyprice=300
class=12
classes=07FF
description=Collect 250 purple tokens for the exchange.
level=1
material=-1
maxcount=1
model=5917
name=Purple Token
quality=1
races=0FF
reqlevel=1
sellprice=100
stackable=250

[item 22]
bonding=4
buyprice=1500
class=12
classes=07FF
description=Collect 100 green tokens for the exchange.
level=1
material=-1
maxcount=1
model=27801
name=Green Token
quality=1
races=0FF
reqlevel=1
sellprice=500
stackable=100

[item 23]
bonding=4
buyprice=15000
class=12
classes=07FF
description=Collect 50 yellow tokens for the exchange.
level=1
material=-1
maxcount=1
model=27556
name=Yellow Token
quality=1
races=0FF
reqlevel=1
sellprice=5000
stackable=50

[item 24]
bonding=4
buyprice=90000
class=12
classes=07FF
description=Collect 10 white tokens for the exchange.
level=1
material=-1
maxcount=1
model=23293
name=White Token
quality=1
races=0FF
reqlevel=1
sellprice=30000
stackable=10

[item 25]
buyprice=35
class=2
classes=07FF
damage=1 3 0
delay=1900
durability=20
inventorytype=21
language=1
level=2
material=1
model=1542
name=Worn Shortsword
quality=1
races=0FF
reqlevel=1
sellprice=7
sheath=3
stackable=1
subclass=7

[item 35]
buyprice=47
class=2
classes=07FF
damage=3 5 0
delay=2900
durability=25
inventorytype=17
level=2
material=2
model=472
name=Bent Staff
quality=1
races=0FF
reqlevel=1
sellprice=9
sheath=2
stackable=1
subclass=10

[item 36]
buyprice=38
class=2
classes=07FF
damage=1 3 0
delay=1900
durability=20
inventorytype=21
level=2
material=2
model=5194
name=Worn Mace
quality=1
races=0FF
reqlevel=1
sellprice=7
sheath=3
stackable=1
subclass=4

[item 37]
subclass=0
buyprice=38
class=2
classes=07FF
damage=1 3 0
delay=2000
durability=20
inventorytype=21
level=2
material=1
model=14029
name=Worn Axe
quality=1
races=0FF
reqlevel=1
sellprice=7
sheath=3
stackable=1

[item 38]
subclass=0
buyprice=1
class=4
classes=07FF
inventorytype=4
level=1
material=7
model=9891
name=Recruit's Shirt
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 39]
quality=0
buyprice=5
class=4
classes=07FF
durability=25
inventorytype=7
level=1
material=7
model=9892
name=Recruit's Pants
races=0FF
reqlevel=1
resistance1=2
sellprice=1
stackable=1
subclass=1

[item 40]
subclass=0
buyprice=4
class=4
classes=07FF
inventorytype=8
level=1
material=7
model=10141
name=Recruit's Boots
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 43]
subclass=0
buyprice=4
class=4
classes=07FF
inventorytype=8
level=1
material=7
model=10272
name=Squire's Boots
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 44]
quality=0
buyprice=4
class=4
classes=07FF
durability=25
inventorytype=7
level=1
material=7
model=9937
name=Squire's Pants
races=0FF
reqlevel=1
resistance1=2
sellprice=1
stackable=1
subclass=1

[item 45]
subclass=0
buyprice=1
class=4
classes=07FF
inventorytype=4
level=1
material=7
model=3265
name=Squire's Shirt
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 47]
subclass=0
buyprice=4
class=4
classes=07FF
inventorytype=8
level=1
material=7
model=9915
name=Footpad's Shoes
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 48]
quality=0
buyprice=4
class=4
classes=07FF
durability=25
inventorytype=7
level=1
material=7
model=9913
name=Footpad's Pants
races=0FF
reqlevel=1
resistance1=2
sellprice=1
stackable=1
subclass=1

[item 49]
subclass=0
buyprice=1
class=4
classes=07FF
inventorytype=4
level=1
material=7
model=9906
name=Footpad's Shirt
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 51]
subclass=0
buyprice=5
class=4
classes=07FF
inventorytype=8
level=1
material=7
model=9946
name=Neophyte's Boots
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 52]
quality=0
buyprice=5
class=4
classes=07FF
durability=25
inventorytype=7
level=1
material=7
model=9945
name=Neophyte's Pants
races=0FF
reqlevel=1
resistance1=2
sellprice=1
stackable=1
subclass=1

[item 53]
subclass=0
buyprice=1
class=4
classes=07FF
inventorytype=4
level=1
material=7
model=9944
name=Neophyte's Shirt
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 55]
subclass=0
buyprice=5
class=4
classes=07FF
inventorytype=8
level=1
material=7
model=9929
name=Apprentice's Boots
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 56]
quality=0
buyprice=5
class=4
classes=07FF
durability=35
inventorytype=20
level=1
material=7
model=12647
name=Apprentice's Robe
races=0FF
reqlevel=1
resistance1=3
sellprice=1
stackable=1
subclass=1

[item 57]
quality=0
buyprice=5
class=4
classes=07FF
durability=35
inventorytype=20
level=1
material=7
model=12645
name=Acolyte's Robe
races=0FF
reqlevel=1
resistance1=3
sellprice=1
stackable=1
subclass=1

[item 59]
subclass=0
buyprice=5
class=4
classes=07FF
inventorytype=8
level=1
material=7
model=3261
name=Acolyte's Shoes
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 60]
bonding=1
buyprice=60
class=4
classes=07FF
durability=45
inventorytype=5
level=5
material=8
model=16891
name=Layered Tunic
quality=1
questid=6
races=0FF
reqlevel=1
resistance1=33
sellprice=12
stackable=1
subclass=2

[item 61]
bonding=1
buyprice=60
class=4
classes=07FF
durability=35
inventorytype=7
level=5
material=8
model=16953
name=Dwarven Leather Pants
quality=1
questid=183
races=0FF
reqlevel=1
resistance1=29
sellprice=12
stackable=1
subclass=2

[item 79]
bonding=1
buyprice=52
class=4
classes=07FF
durability=30
inventorytype=7
level=5
material=7
model=16847
name=Dwarven Cloth Britches
quality=1
questid=183
races=0FF
reqlevel=1
resistance1=9
sellprice=10
stackable=1
subclass=1

[item 80]
bonding=1
buyprice=35
class=4
classes=07FF
durability=20
inventorytype=8
level=5
material=7
model=16854
name=Soft Fur-lined Shoes
quality=1
questid=33
races=0FF
reqlevel=1
resistance1=7
sellprice=7
stackable=1
subclass=1

[item 85]
buyprice=62
class=4
classes=07FF
durability=45
inventorytype=5
level=5
material=8
model=16883
name=Dirty Leather Vest
quality=1
races=0FF
reqlevel=1
resistance1=33
sellprice=12
stackable=1
subclass=2

[item 117]
buyprice=25
class=0
classes=07FF
level=5
material=-1
model=2473
name=Tough Jerky
quality=1
questid=815, questid2=2160
races=0FF
reqlevel=1
sellprice=1
spell=433 0 -1 0 1000
stackable=20

[item 118]
buyprice=20
class=0
classes=07FF
level=5
material=3
model=15710
name=Minor Healing Potion
quality=1
questid=794, questid2=103
races=0FF
reqlevel=1
sellprice=5
spell=439 0 -1 0 120000
stackable=5

[item 120]
quality=0
buyprice=4
class=4
classes=07FF
durability=25
inventorytype=7
level=1
material=7
model=10006
name=Thug Pants
races=0FF
reqlevel=1
resistance1=2
sellprice=1
stackable=1
subclass=1

[item 121]
subclass=0
buyprice=4
class=4
classes=07FF
inventorytype=8
level=1
material=7
model=10008
name=Thug Boots
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 127]
subclass=0
buyprice=1
class=4
classes=07FF
inventorytype=4
level=1
material=7
model=9996
name=Trapper's Shirt
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 128]
quality=0
buyprice=5
class=4
classes=07FF
durability=25
flags=16
inventorytype=7
level=1
material=7
model=396
name=Deprecated Tauren Trapper's Pants
races=0FF
reqlevel=1
resistance1=2
sellprice=1
stackable=1
subclass=1

[item 129]
subclass=0
buyprice=5
class=4
classes=07FF
inventorytype=8
level=1
material=7
model=9977
name=Rugged Trapper's Boots
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 139]
quality=0
buyprice=4
class=4
classes=07FF
durability=25
inventorytype=7
level=1
material=7
model=9988
name=Brawler's Pants
races=0FF
reqlevel=1
resistance1=2
sellprice=1
stackable=1
subclass=1

[item 140]
subclass=0
buyprice=4
class=4
classes=07FF
inventorytype=8
level=1
material=7
model=9992
name=Brawler's Boots
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 147]
quality=0
buyprice=5
class=4
classes=07FF
durability=25
inventorytype=7
level=1
material=7
model=9975
name=Rugged Trapper's Pants
races=0FF
reqlevel=1
resistance1=2
sellprice=1
stackable=1
subclass=1

[item 148]
subclass=0
buyprice=1
class=4
classes=07FF
inventorytype=4
level=1
material=7
model=9976
name=Rugged Trapper's Shirt
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 153]
quality=0
buyprice=5
class=4
classes=07FF
durability=30
inventorytype=7
level=1
material=8
model=10050
name=Primitive Kilt
races=0FF
reqlevel=1
resistance1=14
sellprice=1
stackable=1
subclass=2

[item 154]
subclass=0
buyprice=1
class=4
classes=07FF
inventorytype=4
level=1
material=7
model=10058
name=Primitive Mantle
quality=1
races=0FF
reqlevel=1
sellprice=1
stackable=1

[item 159]
buyprice=25
class=0
classes=07FF
level=5
material=-1
model=18084
name=Refreshing Spring Water
quality=1
questid=381, questid2=2160
races=0FF
reqlevel=1
sellprice=1
spell=430 0 -1 0 59 1000
stackable=20

[item 182]
bonding=4
class=12
classes=07FF
flags=2048
level=1
material=-1
maxcount=1
model=7038
name=Garrick's Head
quality=1
races=0FF
reqlevel=1
stackable=1

[item 192]
description=THIS IS A GM ITEM
resistance2=110
buyprice=271373
class=2
classes=07FF
damage=5 10 2
damage=51 63 0
damage=6 60 4
delay=500
inventorytype=21
level=75
material=6
model=5279
name=Martin Thunder
quality=1
races=0FF
reqlevel=60
resistance1=100
resistance3=110
resistance4=100
resistance5=100
resistance6=100
sellprice=54274
sheath=3
spell=265 0 0 -1 0 -1
stackable=1
subclass=14

[item 193]
buyprice=48
class=4
classes=07FF
durability=40
inventorytype=5
level=5
material=7
model=16579
name=Tattered Cloth Vest
quality=1
races=0FF
reqlevel=1
resistance1=10
sellprice=9
stackable=1
subclass=1

[item 194]
buyprice=49
class=4
classes=07FF
durability=30
inventorytype=7
level=5
material=7
model=16580
name=Tattered Cloth Pants
quality=1
races=0FF
reqlevel=1
resistance1=9
sellprice=9
stackable=1
subclass=1

[item 195]
buyprice=36
class=4
classes=07FF
durability=20
inventorytype=8
level=5
material=7
model=16582
name=Tattered Cloth Boots
quality=1
races=0FF
reqlevel=1
resistance1=7
sellprice=7
stackable=1
subclass=1

[item 200]
buyprice=2270
class=4
classes=07FF
durability=60
inventorytype=5
level=22
material=7
model=16777
name=Thick Cloth Vest
quality=1
races=0FF
reqlevel=17
resistance1=34
sellprice=454
stackable=1
subclass=1

[item 201]
buyprice=2278
class=4
classes=07FF
durability=45
inventorytype=7
level=22
material=7
model=16778
name=Thick Cloth Pants
quality=1
races=0FF
reqlevel=17
resistance1=30
sellprice=455
stackable=1
subclass=1

[item 202]
buyprice=1714
class=4
classes=07FF
durability=30
inventorytype=8
level=22
material=7
model=16780
name=Thick Cloth Shoes
quality=1
races=0FF
reqlevel=17
resistance1=24
sellprice=342
stackable=1
subclass=1

[item 203]
buyprice=1147
class=4
classes=07FF
durability=20
inventorytype=10
level=22
material=7
model=16779
name=Thick Cloth Gloves
quality=1
races=0FF
reqlevel=17
resistance1=21
sellprice=229
stackable=1
subclass=1

[item 209]
buyprice=60
class=4
classes=07FF
durability=35
inventorytype=7
level=5
material=8
model=17140
name=Dirty Leather Pants
quality=1
races=0FF
reqlevel=1
resistance1=29
sellprice=12
stackable=1
subclass=2

[item 210]
buyprice=45
class=4
classes=07FF
durability=20
inventorytype=8
level=5
material=8
model=14444
name=Dirty Leather Boots
quality=1
races=0FF
reqlevel=1
resistance1=23
sellprice=9
stackable=1
subclass=2

[item 236]
buyprice=2795
class=4
classes=07FF
durability=75
inventorytype=5
level=22
material=8
model=14278
name=Cured Leather Armor
quality=1
races=0FF
reqlevel=17
resistance1=77
sellprice=559
stackable=1
subclass=2

[item 237]
buyprice=2805
class=4
classes=07FF
durability=55
inventorytype=7
level=22
material=8
model=14476
name=Cured Leather Pants
quality=1
races=0FF
reqlevel=17
resistance1=67
sellprice=561
stackable=1
subclass=2

[item 238]
buyprice=2112
class=4
classes=07FF
durability=35
inventorytype=8
level=22
material=8
model=14474
name=Cured Leather Boots
quality=1
races=0FF
reqlevel=17
resistance1=53
sellprice=422
stackable=1
subclass=2

[item 239]
buyprice=1413
class=4
classes=07FF
durability=25
inventorytype=10
level=22
material=8
model=14475
name=Cured Leather Gloves
quality=1
races=0FF
reqlevel=17
resistance1=48
sellprice=282
stackable=1
subclass=2

[item 285]
buyprice=3555
class=4
classes=07FF
durability=85
inventorytype=5
level=22
material=5
model=16101
name=Scalemail Vest
quality=1
races=0FF
reqlevel=17
resistance1=165
sellprice=711
stackable=1
subclass=3
 
PM MAIL WWW ICQ   Вверх
ReGeDiT
Дата 11.7.2006, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 4.7.2006
Где: Пущино на Оке

Репутация: нет
Всего: нет



проблема решилась

Код

        (strncmp(buf,"",1)!=0)&&                                // Empty Line :)
        (strncmp(buf," ",1)!=0)&&                               // Space
        (strncmp(buf,"ННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННээээЭЭЭЭ",200)!=0)&&
 
PM MAIL WWW ICQ   Вверх
bsa
Дата 11.7.2006, 19:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Может лучше делать не от обратного? А то какие-то глупости получаются, если честно. 
PM   Вверх
ReGeDiT
Дата 11.7.2006, 19:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 4.7.2006
Где: Пущино на Оке

Репутация: нет
Всего: нет



всё уже smile))) всем спасибо, особенно ptr 
PM MAIL WWW ICQ   Вверх
Страницы: (3) Все 1 2 [3] 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0702 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.