Question: I need help with this C++ program. I need to implement the following functions, but I'm having problemds usinf the necessary a and b arrays.

I need help with this C++ program. I need to implement the following functions, but I'm having problemds usinf the necessary a and b arrays.

#include

//

// Copies the C string pointed by source into the array pointed by destination,

// including the terminating character (and stopping at that point).

// To avoid overflows, the size of the array pointed by destination shall be long enough to contain

// the same C string as source (including the terminating null character), and should not overlap

// in memory w/ source.

char* strcpy_(char* q, const char* p) {

// fill in code here

unsigned i;

for ( i=0; p[i] != '\0'; ++i )

q[i] = p[i];

return q;

}

// Copies the first num characters of source to destination. If the end of the source C string (which is signaled

// by a null-character) is found before num characters have been copied, destination is padded with zeros

char* strncpy_(char* q, const char* p, size_t n) {

// fill in code here

}

// Returns the length of the C string str.

// The length of a C string is determined by the terminating null-character: A C string is as long as the number of characters

// between the beginning of the string and the terminating null character (without including the terminating null character itself).

//

size_t strlen_(const char* p) {

// fill in code here

}

// Appends a copy of the source string to the destination string. The terminating null character in destination

// is overwritten by the first character of source, and a null-character is included at the end of the new string formed

// by the concatenation of both in destination. destination and source shall not overlap.

char* strcat_(char* s, const char* ct) {

// fill in code here

}

// Compares the C string str1 to the C string str2.

// This function starts comparing the first character of each string. If they are equal to each other,

// it continues with the following pairs until the characters differ or until a terminating null-character is reached.

//

int strcmp_(const char* p, const char* q) {

// fill in code here

}

void dstAndSrc(const char* msg, const char* q, const char* p) {

std::cout << msg << "... dst is: '" << q << "', 'src is: '" << p << "' ";

}

#define BUFFER_SIZE 100

int compare(const char* p, const char* q) { // utility function optional

int cmp;

// fill in code here

return cmp;

}

#define BUFFER_SIZE = 100;

int main(int argc, const char * argv[]) {

std::cout << "C++/C string functions to implement... "

<< "\tstrcpy_(char* dst, const char* src); "

<< "\tstrncpy(char* dst, const char* src, size_t n);"

<< "\tstrlen_(const char* str); "

<< "\tstrcat(char* dst, const char* src); "

<< "\tstrcmp(const char* lhs, const char* rhs); ";

char a[BUFFER_SIZE], b[BUFFER_SIZE];

memset(a, 0, sizeof(a));

memset(b, 0, sizeof(b));

char fname[] = "Aaron";

char lname[] = " Rodgerstein";

// fill in code here

std::cout << "before strcpy_... dst is: " << a << "." << " src is: " << fname;

strcpy(*a, *fname);

return 0;

}

//------------------------------------------------------------------------------------------------------

OUTPUT

C++/C string functions to implement...

strcpy_(char* dst, const char* src);

strncpy(char* dst, const char* src, size_t n);

strlen_(const char* str);

strcat(char* dst, const char* src);

strcmp(const char* lhs, const char* rhs);

before strcpy_... dst is: '', 'src is: 'Aaron'

after strcpy_... dst is: 'Aaron', 'src is: 'Aaron'

before strncpy_ (8 chars incl. ' ')... dst is: '', 'src is: ' Rodgerstein'

after strncpy_ (8 chars incl. ' ')... dst is: ' Rodgers', 'src is: ' Rodgerstein'

'Aaron' concatenated with ' Rodgers' = 'Aaron Rodgers'

.................................

Aaron Rodgers

01234567890123456

strlen is: 13

philosopher is greater than than philosophy

momently is greater than than momentarily

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!