update (C)