Here is an implementation.
#define my_sizeof(type) (char *)(&type+1)-(char*)(&type)int main(){ double x; printf("%d", my_sizeof(x)); getchar(); return 0;} |
You can also implement using function instead of macro, but function implementation cannot be done in C as C doesn’t support function overloading and sizeof() is supposed to receive parameters of all data types.
Note that above implementation assumes that size of character is one byte.
Time Complexity: O(1)
Space Complexity: O(1)
No comments:
Post a Comment