differentiate between
const char *a;
char *const a; and
char const *a;
Answer Posted / shaista naaz
char * a = "Hello world";
1)
we cannot make a[i] = 'Some character'. This is not allowed.
but we can make
a = "Hi world";
that is char * a is basically a is a pointer which can point
to different address like when we say
a = "Hello world" and then we say a = "Hi world";
Here a is pointing to different address bit as I said before
If we try a[i] = 'some char' will give compiler error as
because here the string is constant not pointer so this is
const char * a = a is a pointer which is pointing to a
constant string. This is a default behaviour.
2)
char * const a = "I am good" ;
Now here you cannot do any thing no modification allowed.
Try doing a[0] = 'Y';
it fails.
Try doing a = "You are good";
It fails too
Error is You cannot assign to a variable which is a constant.
So a is a variable which is a pointer to character and is
constant.
or a is a constant pointer to character.
3)
char const * a = const char *a
As in both the case a is a pointer to character which is
constant and a can point to different string but this string
itself cannot be modified. This is the default behavior of
char * a.
Is This Answer Correct ? | 1 Yes | 0 No |
Post New Answer View All Answers
How reliable are floating-point comparisons?
Explain how to reverse singly link list.
Why is c fast?
What is main function in c?
What is c language and why we use it?
I need testPalindrome and removeSpace
#include
How to delete a node from linked list w/o using collectons?
What is a macro in c preprocessor?
Is struct oop?
What is a #include preprocessor?
What is the value of h?
What 'lex' does?
Differentiate between functions getch() and getche().
Explain the advantages and disadvantages of macros.
Why is c platform dependent?