0

Plz explain me.... int d = s2.compare(s2.size() -1,1,s3,s3.size() -1,1);

#include <iostream> #include <string> using namespace std; int main() { string s1("Road"); string s2("Read"); string s3("Red"); int a = s1.compare(0,2,s2,0,2); int b = s2.compare(0,2,s1,0,2); int c = s2.compare(0,2,s3,0,2); int d = s2.compare(s2.size() -1,1,s3,s3.size() -1,1); cout<< "a ="<<a ; cout<<"\n"<<"b ="<<b<<"\n"; cout<<"c ="<<c<<"\n"; cout<<"d ="<<d; return 0; }

9th Mar 2017, 8:01 AM
shweta
shweta - avatar
5 Answers
+ 1
I would look up the compare function. quickly though. line int a: s1 compared to s2 both starting at 0 for a length of 2
22nd Mar 2017, 3:58 AM
JofS
JofS - avatar
+ 1
size of s2 - 1. which equals 3. do the math and those become the inserted values like above. (3,1,s3,2,1)
22nd Mar 2017, 2:04 PM
JofS
JofS - avatar
+ 1
they are equal as they are both "d" do you understand now? If the "letters" compared are the same return 0 if there is a difference it will return either 1 or -1 depending on the difference a to b = 1 b to a = -1
22nd Mar 2017, 10:12 PM
JofS
JofS - avatar
0
can you explain me this line ? int d=s2.compare(s2.size()-1,1,s3,s3.size()-1,1);
22nd Mar 2017, 9:32 AM
shweta
shweta - avatar
0
when we run this code, value of d is 0...how its possible?
22nd Mar 2017, 4:14 PM
shweta
shweta - avatar