what is the difference between
const char *p, char const *p, const char* const p
Answers were Sorted based on User's Feedback
Answer / kumar krishna
CONST char *p;
here the const. keyword is coming before the "*p"
So it affects the value pointed by "p" i.e. "*p"
You can't change the character (value pointed by p).
Although you can change the address stored in "p".
char CONST *p;
same explanation as above
char * CONST p;
here the const. keyword is coming before the "p" and
after "*" So it affects the value of "p" (which holds
the address). You can't change the address stored in
"p". Although you can change the value pointed by p
i.e. "*p"
CONST char* CONST p:
here CONST is coming before the "*" as well as after
the "*". Therefore, as expeected neither the address
of nor the value pointed by "p" can be changed.
| Is This Answer Correct ? | 170 Yes | 11 No |
const char*p - p is pointer to the constant character i.e
value in that address location is constact
char const *p - same as above
const char* const p - p is the constant pointer which
points to the constant string, both value and address are
constants
| Is This Answer Correct ? | 115 Yes | 49 No |
Answer / vignesh1988i
CONST char *p:
here the const. keyword is coming before the data
type... so the string here will be the constant but not he
pointer...
char CONST *p:
here also the string will be the constant but not the
pointer...
CONST char* CONST p:
here both , the string as well the pointer will be constant
| Is This Answer Correct ? | 64 Yes | 32 No |
Answer / magdaleen
In a const char *p the chrac pointed by 'p' is a const, so
u cant change the value of the charac ponted by 'p', but u
can make 'p' refer to some other location.
In a char const *p, the ptr 'p' is constant not the
character refered by it, so u can not make 'p' refer to
anyother location, but u can change the value of the charac
pointed by 'p'
| Is This Answer Correct ? | 10 Yes | 4 No |
Answer / bhargav
Const char *P ->
declares a pointer through which you may be able to access
a char but you can not change it through the said pointer.
But the pointer itself can be changed.
char const *p ->
in this the value is constant
const char* const p ->
both address and value are constants
| Is This Answer Correct ? | 13 Yes | 22 No |
what are two kinds of java
What are the functions to open and close the file in c language?
What does %2f mean in c?
What is the memory allocated by the following definition ? int (*x)();
Write a program in c to input a 5 digit number and print it in words.
#include main() { int i=1,j=2; switch(i) { case 1: printf("GOOD"); break; case j: printf("BAD"); break; } }
hello friends what do u mean by BUS ERROR i got this error while i am doing my program in DATA STRUCTURES
List the variables are used for writing doubly linked list program.
What is far pointer in c?
How do you define CONSTANT in C?
What are local and global variables?
What is a structure member in c?