1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
Zina [86]
3 years ago
6

Your team will write a function that reverses a C-string, to practice using pointers. You must use pointers and C-strings for th

is lab, not string objects. Your program should ask for the user's input, as "Enter the original string: " Then, it should print out the reversed string to the console.

Computers and Technology
1 answer:
Nutka1998 [239]3 years ago
3 0

Answer:

Here is the C++ program:

#include <iostream> //to use input output functions

#include<string.h> // to manipulate strings

using namespace std; //to identify objects like cin cout

void ReverseString(char* original_str){ // function that reverses a C-string

       char* ptr1 = original_str;  // pointer that points to the start of C-string

       char* ptr2 = original_str; // pointer that points to the start of C-string initially

       for (int i = 0; i < strlen(original_str)- 1; i++) {//iterates through the length of the C-string

           ptr2++;} //moves ptr2 to the end of the C-string

       while(ptr1 < ptr2) {// swaps each character of C-string using pointers

               char temp = *ptr1; //declares a temp variable to hold character that *ptr1 points to

               *ptr1 = *ptr2;

               *ptr2 = temp;

               ptr1++; //increments ptr1 moving it forward

               ptr2--;   }} //decrements ptr2 moving it backwards

int main(){ //start of main() function

       char input_str[]="";  /// declare a C-string

       cout<<"Enter original string: "; //prompts user to enter a string

       cin>>input_str; // reads that C-string from user

       ReverseString(input_str); //calls function to revserse the input string

       cout<<"\nReversed string: "<<input_str;} // displays the reversed string

Explanation:

The program has a function ReverseString that takes a C-style string as parameter and reverses the string using pointers.

The ptr1 and ptr2 are pointers that initially point to the beginning of original string.

for (int i = 0; i < strlen(original_str)- 1; i++) this statement has a for loop that iterates through the original string and moves the ptr2 to point at the end or last character of the C-string. strlen() method is used to get the length of the C-string. At each iteration ptr2 moves one time forward until the last character of the C-string is reached.

while(ptr1 < ptr2) statement has a while loop that works as follows:

checks if ptr1 is less than ptr2. This evaluate to true because the index of first character that ptr1 points to is 0 and last character is 5 so 0<5. Hence the statements inside while loop execute which swaps the character of C-string from beginning and end index using ptr1 and ptr2. a temp variable is declated to hold character that *ptr1 points to.

For example

original_string = "xyz" Then temp = *ptr1; stores the character that *ptr1 points to i.e. 'x'

*ptr1 = *ptr2; This statement assigns the character that *ptr2 points to the *ptr1. Basically these pointers are used as indices to the C-string. So this means that the *ptr1 now stores the last character of the C-string that is pointed to by *ptr2. So *ptr1 = 'z'

*ptr2 = temp; This statement assigns the character that temp stores to the *ptr2. We know that temp contains the first character i.e 'x'. So *ptr2 = 'x'      

ptr1++; The ptr1 is incremented to 1. This means it moves one position ahead and now points to the second character of the C-string.

ptr2--; The ptr2 is decremented to 1. This means it moves one position backwards and now points to the second character of the C-string.

Now the while loop breaks because ptr1 < ptr2 condition evaluates to false.

So the original string is reversed using pointers. Hence the output is:

zyx

screenshot of the program along with its output is attached.

You might be interested in
___________ is related to mass, but also includes the gravitational pull of the Earth.
anygoal [31]
Earth's gravity comes from all its mass. All its mass makes a combined gravitational pull on all the mass in your body. That's what gives you weight. And if you were on a planet with less mass than Earth, you would weigh less than you do here. So weight is the answer
4 0
3 years ago
It destructs microorganisms in containers
Kitty [74]

Answer:

hope you like this ans

Explanation:

using heat in cleaning containers prevents the spread of poisoning and halts the microorganism to multiply and infest the food that will be placed in containers.

5 0
3 years ago
What is a common indicator of a phishing attempt cyber awareness 2022
vivado [14]

There are several types of malicious document. A common indicator of a phishing attempt cyber awareness 2022 is that It includes a threat of dire circumstances.

  • Phishing attacks often makes use of email or malicious websites to infect the machine with malware and viruses so as to collect personal and financial information.

Cybercriminals often uses different means to lure users to click on a link or open an attachment that infects their computers thereby producing vulnerabilities for criminals to use to attack.

Learn more from

brainly.com/question/24069038

7 0
3 years ago
While working on a customer issue, your colleague calls and asks for help to resolve his issue. What should you do?A. Go ahead a
Lesechka [4]

Answer:

Request the colleague to call after sometime

Explanation:

While working on a customer issue, your colleague calls and asks for help to resolve his issue. What should be done is to "Request the colleague to call after some time."

This is because,e in situations like that, it is believed that the customer should come first, and that is the purpose of being there. For employee to serve the customer. A colleague can easily link up with other employees to get his issues sorted, or simply wait.

4 0
3 years ago
Does the security burden fall primarily on the user? On
liubo4ka [24]

Answer:

yes and no because of the security

Explanation:

yes and no because of the security

6 0
3 years ago
Other questions:
  • Suppose you define a java class as follows: public class test { } in order to compile this program, the source code should be st
    14·1 answer
  • You are working on a router that has established privilege levels that restrict access to certain functions. you discover that y
    5·1 answer
  • Which layer concerns the gateway to the network?
    10·1 answer
  • Which of these consoles had a 64-bit architecture
    10·1 answer
  • As your textbook explains, Wikipedia is usually the only source you need when
    8·1 answer
  • First person to answer gets free brainlist
    15·2 answers
  • Which computer peripheral is used when you would like to use a DVD or CD?
    12·2 answers
  • Explains why do we use formulas instead of just using a calculator in Excel?​
    7·1 answer
  • Why should you avoid the use of sarcasm, clichés, and idioms in business<br> letters
    13·1 answer
  • An Accenture healthcare client is interested in implementing an Artificial Intelligence (AI) solution to improve patient care, b
    11·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!