support array and multiple pointer