Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

C++ Write a program that reads lines of text and appends them to a char buffer[1000]. Stop after reading 1,000 characters. As you read in

C++

Write a program that reads lines of text and appends them to a char buffer[1000]. Stop after reading 1,000 characters. As you read in the text, replace all newline characters ' ' with '\0' terminators. Establish an array char* lines[100], so that the pointers in that array point to the beginnings of the lines in the text. Only consider 100 input lines if the input has more lines. Then display the lines in reverse order, starting with the last input line.

This is the code I have but it is not outputting anything. Please help, thanks.

#include

using namespace std;

int main() {

char buffer[1001];

char *lines[100];

char c;

int count1, count2;

/*to count number of characters read*/

count1 = 0;

/*to count no. of lines read*/

count2 = 0;

/*first line starting from 0 index*/

lines[0] = &buffer[0];

while (count1 != 1000 && count2 != 100) {

/*read a character*/

c = getchar();

if (c == ' ') {//if newline

buffer[count1] = '\0';

/*increment no. of lines read*/

count2++;

/*next lines starts from */

lines[count2] = &buffer[count1 + 1];

}

else {//otherwise

buffer[count1] = c;

}

count1++;

}

buffer[count1] = '\0';

/*print in reverse order*/

for (int i = count2; i >= 0; i--){

cout << lines[i] << " ";}

return 0;

}

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

Step: 3

blur-text-image

Ace Your Homework with AI

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

Get Started

Students also viewed these Databases questions