c语言定义和声明的区别