what is difference between ++(*p) and (*p)++
Answers were Sorted based on User's Feedback
Answer / umamaheswari
p is a pointer variable which is holding the address of
another variable ,*p indicates the value that stored in
particular address
++(*p)-the value of the particular variable which is stored
in p is first incremented and used by next instruction
(*p)++ -the value of the particular variable which is
stored is executed or used by next instruction as it is
what it was,if it is any looping statement first time the
loop will be executed with the original value while doing
the second looping it is incremented by 1
| Is This Answer Correct ? | 3 Yes | 2 No |
++(*p) (or) ++*p -> Pre-increment the Value
(*p)++ -> Post-increment the value
*++p -> Increment the Position and then obtain the Value
*p++ (or) *(p++) -> Obtain the Value and then increment the Position
Example:
#include<stdio.h>
void main()
{
char str[10] = "Helyo";
char *p = str;
printf("%c
",++(*p)); // Pre-Increment the Value -> I
printf("%c
",++*p); // Pre-Increment the value -> J
printf("%c
",(*p)++); // Post-Increment the value -> J and increment to K
printf("%c
",*p++); // Post-Increment the position -> K and move to next position i.e. e
printf("%c
",*(p++)); // Post-Increment the position -> e and move to next position i.e. l
printf("%c
",*++p); // Pre-Increment the position and obtain value -> y
}
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / srinivas
++(*p)as this means the first the addres is increneted and
then address is assgined
*p++ as this mean that the address is assign to it then the
address is incremented
| Is This Answer Correct ? | 1 Yes | 2 No |
++(*p)-> Here ,increments the address of p
(*p)++ -> Here , Increments the Value of p
| Is This Answer Correct ? | 5 Yes | 9 No |
Answer / sonal
++(*p) it will increase pointer value to one value
(*p)++ will refer to next memory location
| Is This Answer Correct ? | 1 Yes | 5 No |
Answer / pradeep......
Both are same ..................
reult will not differ in both operations....
#include <stdio.h>
#include <stdlib.h>
//#include <ctype.h>
void main()
{
char *ptr="hello";
clrscr();
//++(*ptr);
(*ptr)++;
printf("%s\n",ptr);
getch();
}
check this code..........
| Is This Answer Correct ? | 1 Yes | 8 No |
Answer / savita
++(*p) means address that contained in p is incremented.
(*p)++ in this case since both the operator are unary
operator , so it's priority is from right to left.Hence here
first address that contained in p is incremented & then
gives the value at that address.
| Is This Answer Correct ? | 0 Yes | 8 No |
write a c program to remove all the duplicate characters in a string and replace with single character? ex:-input- AAABBBCCC output- ABC
What is #include stdio h and #include conio h?
Write a program to give following output..... ********* **** **** *** *** ** ** * * ** ** *** *** **** **** *********
What is #include called?
How can I rethow can I return a sequence of random numbers which dont repeat at all?
How can you find out how much memory is available?
Why isnt there a numbered, multi-level break statement to break out
write a function that accepts an array A with n elements and array B with n-1 elements. Find the missing one in array B,with an optimized manner?
How we can set and clear bit in a byte using macro function?
how do u find out the number of 1's in the binary representation of a decimal number without converting it into binary(i mean without dividing by 2 and finding out the remainder)? three lines of c code s there it seems...can anyone help
What is the use of #define preprocessor in c?
what's the return value of malloc()