#ifndef MYSTRING_H #define MYSTRING_H #include typedef struct myString_t * MyString; // It's enough for the compiler // to know MyString is a pointer to // a struct MyString_t. // Client code should never try to // access fields of the struct. // takes a null terminated array of char as the argument MyString MyString_create(const char * cstring); // deep copy - takes another MyString as the argument bool MyString_copy(MyString dest, const MyString src); // print utility void MyString_print(MyString s); #endif // MYSTRING_H