C Programming - Pointers - Discussion
Discussion Forum : Pointers - Find Output of Program (Q.No. 9)
9.
What will be the output of the program if the size of pointer is 4-bytes?
#include<stdio.h>
int main()
{
printf("%d, %d\n", sizeof(NULL), sizeof(""));
return 0;
}
Answer: Option
Explanation:
In TurboC, the output will be 2, 1 because the size of the pointer is 2 bytes in 16-bit platform.
But in Linux, the output will be 4, 1 because the size of the pointer is 4 bytes.
This difference is due to the platform dependency of C compiler.
Discussion:
27 comments Page 3 of 3.
Poornachandra HD said:
8 years ago
The size differs for 32 and 64-bit system.
In 32-bit, It will be 4 bytes.
In 64-bit, It will be 8 bytes.
In 32-bit, It will be 4 bytes.
In 64-bit, It will be 8 bytes.
Lakshmi Priya said:
7 years ago
Output is 4, 2 because " " is string not character.
Sheheryar izhar said:
7 years ago
Pointer size in 2 bytes in 16 bits.
Mohan said:
6 years ago
sizeof("") => 1 => because every string in c ended with '\0'(internally) whether it may have characters or not.
sizeof(NULL) =>4 or 2 machine dependent => because NULL is MACRO which is replaced as 0 there fore sizeof(0) = sizeof(int) => integer size may be 2 in turbo c and 4 in GCC compiler.
sizeof(NULL) =>4 or 2 machine dependent => because NULL is MACRO which is replaced as 0 there fore sizeof(0) = sizeof(int) => integer size may be 2 in turbo c and 4 in GCC compiler.
TDas said:
5 years ago
Answer should be 4, 2 because in " " there is a blank and a Null character. To make it 4, 1 there should not be any blank so, it should be "".
Pooja said:
5 years ago
NULL is Predefine macro i.e. #define NULL (void*) 0 which is pointer and size of a pointer is 4B and " " space is character and size of char is 1B.
(1)
J.Joel said:
3 years ago
In pointer, the size of int is 4 and the size of string is 1.
So, sizeof(NULL) defines the integer.
size("") is a string because of double courts, also it does not contain any value.
So, sizeof(NULL) defines the integer.
size("") is a string because of double courts, also it does not contain any value.
(1)
Post your comments here:
Quick links
Quantitative Aptitude
Verbal (English)
Reasoning
Programming
Interview
Placement Papers