C Custom Data Structure