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 |
Find greatest number out of 10 number without using loop.
When do you say that a digraph is acyclic A)if and only if its first search does not have back arcs B)a digraph is acyclic if and only if its first search does not have back vertices C)if and only if its first search does not have same dfnumber D)None of these
how to add numbers without using arithmetic operators.
What is C language Terminator?
increment operateor (++)and decrament(--) #include<stdio.h> #inclide<conio.h> main() { int x=15; while(x!=0) scanf("%d",&x); {
What does int main () mean?
where can function pointers be used?
What is a pointer value and address in c?
What does %p mean?
what r callback function?
What are the application of c?
What is keyword in c?