一道c语言解答函数返回多个值,用全局变量,传址参数,和返回结构体变量,他们之间的优缺点在哪,求解答
展开全部
全局变量:
优点:变量在各个函数间自由调用和赋值,不需要考虑各个函数直接的传值问题,程序简单。
缺点:①资源占用多;②函数的移植性差;③全局变量用的多容易混,程序员记忆量大,有时需要列一个变量表。
结构体变量:
优点:方便。
缺点:使用范围受限,如果几个返回值正好是某个已有结构体变量的内容,那才是不二的选择。如果单独为了返回几个值而定义一个结构体变量,则得不偿失,增加编程的工作量。所以这个方法用的少。
传值参数(指针):
优点:用传值参数(指针)回传返回值是最常用的方法,需要哪一个值回传,就定义哪一个变量的指针,用完就把内存收回来了,执行速度快,程序直观,函数的移植性好。
缺点:要熟悉指针的使用,别搞乱套。定义指针,增加了一些工作量。
优点:变量在各个函数间自由调用和赋值,不需要考虑各个函数直接的传值问题,程序简单。
缺点:①资源占用多;②函数的移植性差;③全局变量用的多容易混,程序员记忆量大,有时需要列一个变量表。
结构体变量:
优点:方便。
缺点:使用范围受限,如果几个返回值正好是某个已有结构体变量的内容,那才是不二的选择。如果单独为了返回几个值而定义一个结构体变量,则得不偿失,增加编程的工作量。所以这个方法用的少。
传值参数(指针):
优点:用传值参数(指针)回传返回值是最常用的方法,需要哪一个值回传,就定义哪一个变量的指针,用完就把内存收回来了,执行速度快,程序直观,函数的移植性好。
缺点:要熟悉指针的使用,别搞乱套。定义指针,增加了一些工作量。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询