Устранить ошибку клиента библиотеки - C (СИ)

Узнай цену своей работы

Формулировка задачи:

/home/user/Рабочий стол/Ubuntu One/Пример 2.c:64:14: ошибка: expected «=», «,», «;», «asm» or «__attribute__» before «.» token Сравнивал с предыдущими кодами что без ошибок компилируются - ошибок какбы не должно быть. Отличие их в том что подчёркиваний "_" нет в другом коде в названиях функций, массивов и переменных, а тут его удаление не помогло.
/* 
 * 
 * 
 * Компиляция
 * %d - путь к исходнику
 * %f - имя исходника
 * %e - имя объектного фалйла
 * libMylib.so - имя библиотеки
 * 
 * gcc "%d/%f.c"
 * gcc "%d/%e.o" -L. -o -lfstdin "%d/libMylib.so"
 *
 *   
 */
 
#include <stdio.h>
#include <stdlib.h>
 
/*Объявляю синоним типа функции*/
typedef char (*callback)(char);
 
/*Создаю и инициализирую структуру*/
struct Data
{
    FILE *fp;
    char *input;
    /* На входе массив, содержащий элементов неболее максимального значения для числа типа 
     * unsigned short.  256х256 (65536). 
     */
    callback function_pointer;
}data_pointer;
 
/*Объявляю функции библиотеки*/
extern char network_work(struct Data data_pointer);
extern FILE *open_memory_file(char *fname);
 
char callback_function(char out) // Это функция обратного вызова
{
    unsigned short i, n;
    n = 0;
    if (out == 0)
    {
        for(i = 0; i < 65536; i++)
        {
            if (data_pointer.input[i] == 18)
            {
                n++;
                data_pointer.input[i] = data_pointer.input[i] + 1; // определяющая положительный
            }
            else // нейтральный
            {
                data_pointer.input[i] = data_pointer.input[i] - 1; // или отрицательный результат действия
            }
        }
        printf(" %d /n", n);
    }
    return 0;
}
/*вношу в структуру указатель на функцию ил адрес, хер его знает*/
    data_pointer.function_pointer = callback_function; //ВООООТ ТУТ ПАКОСТЬ С ОШИБКОЙ.
 
int main()
{/*вызываю библиотечную функцию создающю новый или открывающую имеющийся файл*/
    if ((data_pointer.fp = open_memory_file("File.MyFIle")) == NULL)
        return -1;
    else
    {/*и передаю данные на вход*/
        network_work(data_pointer);
        fclose(data_pointer.fp); // По окончании работы программы закрываю файл
    }
    return 0;
}

Решение задачи: «Устранить ошибку клиента библиотеки»

textual
Листинг программы
for(i = 0; i < 65536; i++)

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.833 из 5