Open In App

What is the difference between “char a” and “char a[1]”?

Last Updated : 08 May, 2017
Improve
Improve
Like Article
Like
Save
Share
Report

Question Source: Aricent Interview

Although both expressions can be used to create a variable to store one character, there are following differences.

1) “char a” represents a character variable and “char a[1]” represents a char array of size 1.

2) If we print value of char a, we get ASCII value of the character (if %d is used). And if we print value of char a[1], we get address of the only element in array.




#include <stdio.h>
  
int main ()
{
  char a1 = 'A';
  char a2[1] = {'A'};
  printf("%d  %d", a1, a2);
  return 0;
}


Output:

65
An address

Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads