Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Implement the interface from mystring.h using dyamically - allocated strings that will allocate exactly the correct amount of memory to store their characters. But they

Implement the interface from mystring.h using dyamically-allocated
strings that will allocate exactly the correct amount of memory to store their
characters. But they will also have an arbitrary maximum length of
MAX_STRING_LENGTH, which will be defined elsewhere.
Assume the code you write will be saved to mystring.c; write the complete
contents of that file. Implement only the data structure; do not write a main
program. Write appropriate contracts.// This is an interface for a string data type.
// A string stores an exactly-sized, immutable string.
typedef struct STRING String;
// This is the maximum length of a string.
// It is application-specific and will not be defined in mystring.c.
// Instead, it will be defined by the program that uses this interface.
extern const int MAX_STRING_LENGTH;
// Create and return a new string containing a copy of the string "init".
// Allocate exactly as many characters as needed to store it.
// Return NULL on error, such as init is longer than MAX_STRING_LENGTH.
String * new_string( char *init );
// Destroy the string, freeing all of its memory.
void destroy_string( String *the_string);
// Create and return a new string containing the concatenation (joining)
// of stringl and string 2, again allocating exactly as many characters as
// required. Return NULL on error.
String * concat ( String *string1, String *string2);
// Copy up to "max_len" chars and 10 from the string to the given char "array".
// The "max_len" includes 10, which will always be placed at the end.
// Return the number of characters copied excluding 10, or -1 on error.
int to_array( String *string, char *array, int max_len );
image text in transcribed

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Accounting And Auditing Research And Databases Practitioner's Desk Reference

Authors: Thomas R. Weirich, Natalie Tatiana Churyk, Thomas C. Pearson

1st Edition

1118334426, 978-1118334423

More Books

Students also viewed these Databases questions