What is the difference between Char a[ ]=”string” and char
*a=”String”

Answers were Sorted based on User's Feedback



What is the difference between Char a[ ]=”string” and char *a=”String”..

Answer / prasant nayak

differences are as follows
1.
Char a[]="string"; //invalid, coz--its not 'Char' but
its 'char' , i.e its syntaticaly incorrect


char *a="string";//it correct

2.
char a[]="string";

above 'a' is an array of characters , where we can change
the string, its not a constant.
i.e we can do a[3] = 'Z';

char *a = "string";

above 'a' is a string constant where we can't change the
string i.e we can't do a[3] = 'Z';

Is This Answer Correct ?    42 Yes 6 No

What is the difference between Char a[ ]=”string” and char *a=”String”..

Answer / sushant mahajan

Ohk... dudes I think that 'C' in Char a[] is a typo. The only difference I can see is this:

char *a="string";
printf("%d", sizeof(a));
/*will print 2 or 4, whatever is the memory assigned to a pointer*/

char a[]="string";
printf("%d", sizeof(a));
/*will print 7 - 1 byte for each character+1 byte for the '\0' */

So basically its a memory thing :D

Is This Answer Correct ?    4 Yes 0 No

What is the difference between Char a[ ]=”string” and char *a=”String”..

Answer / kanakesh

using char*a we can't assign new individual character like
a[2]='k';

Is This Answer Correct ?    10 Yes 9 No

What is the difference between Char a[ ]=”string” and char *a=”String”..

Answer / vikram

char a[]="string" refers that string has constant length and it will reserve fixed memory while in case of char *a="string" the string has variable length

Is This Answer Correct ?    1 Yes 0 No

What is the difference between Char a[ ]=”string” and char *a=”String”..

Answer / thinker

Losers.! char* is not a constant pointer where as char[] is a constant pointer

Is This Answer Correct ?    2 Yes 1 No

What is the difference between Char a[ ]=”string” and char *a=”String”..

Answer / rajesh kumar

char *p="string" has RO permission while its counterpart char a[]="string" has RW permission.

Is This Answer Correct ?    0 Yes 0 No

What is the difference between Char a[ ]=”string” and char *a=”String”..

Answer / anshul

I guess the main difference for which interviewer was looking for it that name of the array is constant pointer and character pointer is not. So, if
char a1[]="string";
char *a2="string";

a2=a1;//Compiles and works perfectly
a1=a2;//Error caught at compile time

This is a famous example and is available in many C books.

Is This Answer Correct ?    0 Yes 0 No

What is the difference between Char a[ ]=”string” and char *a=”String”..

Answer / ratish

c/c++ is case sensitive language. so Char is invalid data type. hence char *a="String" is correct answer.

Is This Answer Correct ?    11 Yes 14 No

What is the difference between Char a[ ]=”string” and char *a=”String”..

Answer / vincy

the syntax for a character variable is wrong if we use a
pointer variable as given above that is char*a="string". so
i think the first one is right.we know that the pointer
variable points to the value in the particular address, then
it should not the "string" but "&string".

Is This Answer Correct ?    0 Yes 4 No

What is the difference between Char a[ ]=”string” and char *a=”String”..

Answer / niranjan kumar niraj

char a[]="string" returns characters and char *a[]="String"
returns address of character

Is This Answer Correct ?    1 Yes 7 No

Post New Answer

More C++ General Interview Questions

By using c++ with an example describe linked list?

0 Answers  


Write about c++ storage classes?

0 Answers  


What language does google use?

0 Answers  


Am pass the 10000 records to target in target I will take commit interval 15000 when I was stop the work flow what will happened

0 Answers  


Write a single instruction that will find the remainder of integral division when x is divided by y. Have the answer stored in z.

1 Answers  






What is runtime errors c++?

0 Answers  


Explain bubble sorting.

0 Answers  


What is the difference between public and private data members?

0 Answers  


Write a corrected statement in c++ so that the statement will work properly. x + y=z;

2 Answers  


Can the creation of operator** is allowed to perform the to-the-power-of operations?

0 Answers  


What is setfill c++?

0 Answers  


What does flush do?

0 Answers  


Categories