if main   need malloc