Я получаю ошибкуКонфликтующие типы «свободных»
конфликтные ситуации для «свободных»
при вызове функции free()
ниже.
int main ()
{
char fx [] = "x^2+5*x-1";
node * fxNode = buildTree(fx, sizeof(fx)/sizeof(char));
printf(deriveFromTree(fxNode)); // Should print "2*x+5"
free(fxNode);
return 0;
}
Не могу понять, почему. Не уверен, что если этот вопрос, но то, что над ней
#include <stdio.h>
char opstack [5] = {'+','-','*','^', '\0'};
unsigned short int lowerOpPrecedence (char, char, char *);
int stringToUnsignedInt (char *, unsigned int *);
int stringToDouble (char * , double *);
unsigned short int stringCompare (char * , char *);
void stringCopy (char * , char *);
typedef struct treeNode
{
char * fx;
char * op;
struct treeNode * gx;
struct treeNode * hx;
} node;
unsigned short int getNodeState (node *);
node * buildTree (char *, int);
char * basicDerivative (char *);
char * derivateFromTree (node *);
и что под ней есть куча реализаций функций.
Dang it. Я пытаюсь написать программу с нуля - нет библиотек, кроме ''. Есть ли способ для меня реализовать «свободную» функцию с нуля? –
@FiredfromMicrosoft '' не является библиотекой, это файл заголовка. Если вы не хотите включать заголовочный файл, вы можете добавить прямое объявление в свой исходный код. –
Написание 'free' с нуля звучит как изобретать колесо. Зачем вам это делать? –