how to swap two strings without using any third variable ?
Answers were Sorted based on User's Feedback
Answer / chitranshu asthana
char* s1 = "Hello";
char* s2 = "World";
s1 = (char*)((int)s1 + (int)s2);
s2 = (char*)((int)s1 -(int) s2);
s1 = (char*)((int)s1 - (int)s2);
printf("%s:%s", s1, s2);
| Is This Answer Correct ? | 91 Yes | 13 No |
Answer / santosh panigrahy
int main()
{
char *a = "hello";
char *b = "world";
a = a + (a-b);
b = a - (a-b)/2;
a = a - (a-b)*2;
printf(" a = %s b = %s ",a,b);
return 0;
}
| Is This Answer Correct ? | 26 Yes | 5 No |
Answer / ankit sharma
ANSWER 4 IS BEST AND EASIEST SOLUTION.....THANKS BUDDY
PLEASE DON'T REFER ABOVE THREE SOLUTION BCOZ THEY ARE FOR INTEGER NOT FOR STRING.
I RATED 4TH SOLUTION IS 5/5.
| Is This Answer Correct ? | 16 Yes | 4 No |
Answer / ashutosh
say a = 10 and b = 20;
b = a + b;// b= 30
a = b - a;// a= 20
b = b - a;// b= 10
so now a = 20 b= 10
| Is This Answer Correct ? | 27 Yes | 16 No |
Answer / ruchi
Hi ashutosh,
This technique is used to swap numeric values without using
3rd vaariable not for strings .
We can do it by using binary shift operators.
| Is This Answer Correct ? | 8 Yes | 7 No |
Answer / mathias karlsson
X = X & Y
Y = X.Substring(&H0, X.Length - Y.Length)
X = X.Substring(X.Length - Y.Length, Y.Length)
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / rohit kapade
bool SwapString(char **s1,char **s2)
{
//char *temp = NULL;
//temp = *s1;
//*s1 = *s2;
//*s2 = temp;
*s1 = (char*)((int)*s1 + (int)*s2);
*s2 = (char*)((int)*s1 - (int)*s2);
*s1 = (char*)((int)*s1 - (int)*s2);
return true;
}
| Is This Answer Correct ? | 3 Yes | 3 No |
Answer / doesntmatter
" PLEASE DON'T REFER ABOVE THREE SOLUTION BCOZ THEY ARE FOR
INTEGER NOT FOR STRING. "
lol
(c) string -> char * -> pointer -> integer.
| Is This Answer Correct ? | 0 Yes | 1 No |
Answer / kollu.praveen
var1="String1"
var2="String2"
var1=var1+var2
var2=mid(var1,1,Len(var1)-Len(var2))
print var2
var1=mid(var1,(Len(var1)-Len(var2)+1),(Len(var2)+1))
print var1
| Is This Answer Correct ? | 0 Yes | 2 No |
Answer / rohit kapade
bool SwapString(char **s1,char **s2)
{
char *temp = NULL;
temp = *s1;
*s1 = *s2;
*s2 = temp;
//strcpy(temp,s1);
//strcpy(s1, s2);
//strcpy(s2, temp);
return true;
}
| Is This Answer Correct ? | 0 Yes | 6 No |
What is the full form of c++?
What do you mean by inheritance in c++?
What is the difference between strcpy() and strncpy()?
wap to accept 10 numbers & display the number of odd and even numbers??
Is c++ high level programming language?
Can I have a reference as a data member of a class? If yes, then how do I initialise it?
List the issue that the auto_ptr object handles?
What is meant by a delegate?
How long does this loop run: for(int x=0; x=3; x++) a) Never b) Three times c) Forever
17 Answers Datavance, Quark, VEL, Wipro,
Write a c++ code that will calculate the roots of a quadratic equation a2+ bx+c=0 Hint: d = sqrt (b2-4ac), and the roots are: x1 = (€“b + d)/2a and x2 = (€“b €“ d)/2a (use sqrt function from cmath.h )?
Can we use clrscr in c++?
What will strcmp("Astring", "Astring"); return a) A positive value b) A negative value c) Zero