Can U write a C-program to print the size of a data type
without using the sizeof() operator? Explain how it works
inside ?

Answers were Sorted based on User's Feedback



Can U write a C-program to print the size of a data type without using the sizeof() operator? Expla..

Answer / rajesh

#include<stdio.h>
int main()
{
int p;

printf("%d\n",(char*)(&p+1)-(char*)(&p));
return 0;
}

Is This Answer Correct ?    8 Yes 3 No

Can U write a C-program to print the size of a data type without using the sizeof() operator? Expla..

Answer / sanjay bhosale

// SizeOperator.cpp : main project file.
// Program : To implement sizeof operator

#include "stdafx.h"
#include<stdio.h>
#define sizeof_op1(val) ((char *)(&(val) + 1) - (char *)&(val))// for variable
#define sizeof_op2(type) ((type *)0) + 1//((type *) (10) + 1) - (type *) (10) // for type

using namespace System;

int main(array<System::String ^> ^args)
{
int i=0;
char ch = 'a';
float f = 1.00f;

printf("\nSize of int : %d %d",sizeof_op2(int),sizeof(int));
printf("\nSize of char : %d %d",sizeof_op2(char),sizeof(char));
printf("\nSize of float : %d %d",sizeof_op2(float),sizeof(float));
printf("\nSize of long : %d %d",sizeof_op2(long),sizeof(long));
printf("\nSize of short : %d %d",sizeof_op2(short),sizeof(short));
printf("\nSize of double : %d %d",sizeof_op2(double),sizeof(double));
printf("\nSize of long double : %d %d",sizeof_op2(long double),sizeof(long double));

printf("\nsize of int variable :%d %d",sizeof_op1(i),sizeof(i));
printf("\nsize of char variable :%d %d",sizeof_op1(ch),sizeof(ch));
printf("\nsize of float variable :%d %d",sizeof_op1(f),sizeof(f));
//Console::WriteLine(L"Hello World");
getchar();
return 0;
}

Is This Answer Correct ?    0 Yes 0 No

Can U write a C-program to print the size of a data type without using the sizeof() operator? Expla..

Answer / saikat

#include <stdio.h>

int main()
{
float a[2];

int size = (char*)&a[1] - (char*)&a[0];

printf("%d
",size);
return 0;
}

Is This Answer Correct ?    0 Yes 0 No

Post New Answer



More C Interview Questions

What is the output of following program ? int main() { int x = 5; printf("%d %d %d\n", x, x << 2, x >> 2); }

5 Answers   Amazon, Qualcomm,


Can the curly brackets { } be used to enclose a single line of code?

0 Answers  


int array[]={1,2,3,4,5,6,7,8}; #define SIZE (sizeof(array)/sizeof(int)) main() { if(-1<=SIZE) printf("1"); else printf("2"); }

2 Answers   Vector,


Why is main function so important?

0 Answers  


a c variable cannot start with a) an alphabet b) a number c) a special symbol d) both b and c above

0 Answers  






What is the role of this pointer?

0 Answers  


please give me answer with details #include<stdio.h> main() { int i=1; i=(++i)*(++i)*(++i); printf("%d",i); getch(); }

3 Answers  


Which control loop is recommended if you have to execute set of statements for fixed number of times?

0 Answers  


What is the difference between functions getch() and getche()?

0 Answers  


player is good if the following conditions are satisfied: He is either from “India”, “Japan” or “Korea” He has a minimum of 3 years of experience He has won at least 3 major tournaments, and one of them must be "World Championship Tournament". He must know more than 10 techniques. (but see next question) If he knows less than 10 techniques, then he must be a world champion. His name contains at least 3 words. For example "Sachin Tendulkar" will not meet this condition. Write a method: boolean isGoodPlayer(String name, String country, int yearsExperience, String[] majorTournamentsWon, String[] techniques, boolean isWorldChampion) name country yearsExperience majorTournamentsWon techniques isWorldChampion

1 Answers  


Please provide question papers of NATIONAL INFORMATICS CENTRE for Scientific officer

0 Answers  


What is a function in c?

0 Answers  






Categories