ЗМ
Заболотный Максим

Может кто то решит проблему?

#include
#include

#define MAX_STRING_SIZE 128
#define MAX_ARRAY_SIZE 256
#define PATH "D:\\Programs & Drivers\\Student\\C\\RGR\\Debug\\categories\\"
#define CATEGORIES_FILE_NAME "categories_info.txt"

void deleteTransfer(char sourceString[MAX_STRING_SIZE]);
void printWordArray(char* wordCategoryArray[10][MAX_ARRAY_SIZE]);
int getWordArray(char* wordCategoryArray[10][MAX_ARRAY_SIZE], char categoryName[MAX_STRING_SIZE], int i);

int main()
{
int i = 0;
char stringFromFile[MAX_STRING_SIZE];
char filePathName[MAX_STRING_SIZE] = PATH;
char* wordCategoryArray[10][MAX_ARRAY_SIZE];
FILE *mainInfoFile = NULL;

strcat(filePathName, CATEGORIES_FILE_NAME);
fopen_s(&mainInfoFile, filePathName, "r");

if (mainInfoFile == NULL)
{
printf("File categories_info.txt wasn't opened");
getchar();
return -1;
}

while (!feof(mainInfoFile))
{
fgets(stringFromFile, MAX_STRING_SIZE, mainInfoFile);
wordCategoryArray[0] = stringFromFile;
getWordArray(wordCategoryArray, stringFromFile, i);
i++;
}

printWordArray(wordCategoryArray);
getchar();
return 0;
}

int getWordArray(char* wordCategoryArray[10][MAX_ARRAY_SIZE], char categoryName[MAX_STRING_SIZE], int i)
{
FILE *categoryFile;
FILE *wordFile;
char word[MAX_STRING_SIZE];
char wordFileName[MAX_STRING_SIZE];
char categoryFilePath[MAX_STRING_SIZE] = PATH;
int j = 1;

deleteTransfer(categoryName); /* удаляем пробел */
strcat(categoryFilePath, categoryName); /* соединяем с папкой */
strcat(categoryFilePath, "\\info.txt");/* и файлом с информацией*/
fopen_s(&categoryFile, categoryFilePath, "r"); /* открываем для чтения */

if (categoryFile == NULL) /* если не открылась то выход */
{
printf("cannot open category file %s\n", categoryFilePath);
return -1;
}

else
{
printf("file opened %s\n", categoryFilePath);
}

while (!feof(categoryFile))
{
char wordFilePath[MAX_STRING_SIZE] = PATH;
strcat(wordFilePath, categoryName);
fgets(wordFileName, MAX_STRING_SIZE, categoryFile);
strcat(wordFilePath, "\\");
strcat(wordFilePath, wordFileName);
fopen_s(&wordFile, wordFilePath, "r");
if (wordFile != NULL)
{
printf("file opened %s\n", wordFilePath);
while (!feof(wordFile))
{
fgets(word, MAX_STRING_SIZE, wordFile);
printf("wordCategoryArray i = %d j = %d = %s\n", i, j, word);
wordCategoryArray[j] = word;
j++;
}
}
else
{
printf("cannot open %s\n", wordFilePath);
}
}

return 0;
}

void printWordArray(char* wordCategoryArray[10][MAX_ARRAY_SIZE])
{
int i = 0;
int j = 0;
for (; i != 2; i++)
{
for (j = 0; j < 2; j++)
{
printf("word i = %d, j = %d = %s \n", i, j, wordCategoryArray[j]);
}
}
}

void deleteTransfer(char sourceString[MAX_STRING_SIZE])
{
int i = 0;
for (; sourceString != '\0'; i++)
{
if (sourceString != '\n')
{
}
else
{
sourceString = '\0';
break;
}
}
}

Митяй Струнец
Митяй Струнец

код покоцало - надо было на pastebin.com выкладывать
на картинке почти ничего не видно
из того что видно - кажись, чужую память выводишь

Похожие вопросы
скажите пожалуйста как решить эту проблему?
Помогите решить проблему !!
Не знаю как решить проблему!
Решить проблему в PHP!
Помогите решить проблему!!!
помогите решить проблему?
Может кто то решит проблему? (2)
Как же решить эту проблему???
Как решить эту проблему с компом ??
помогите решить проблему !!!