c语言函数过长 c语言变长参数函数
如果C语言函数参数太多,可以怎么优化
一个函数的参数的数目没有明确的限制,但是参数过多(例如超过8个)显然是一种不可取的编程风格。参数的数目直接影响调用函数的速度,参数越多,调用函数就越慢。另一方面,参数的数目少,程序就显得精练、简洁,这有助于检查和发现程序中的错误。因此,通常应该尽可能减少参数的数目,如果一个函数的参数超过4个,你就应该考虑一下函数是否编写得当。 如果一个函数不得不使用很多参数,你可以定义一个结构来容纳这些参数,这是一种非常好的解决方法。在下例中,函数print_report()需要使用10个参数,然而在它的说明中并没有列出这些参数,而是通过一个RPT_PARMS结构得到这些参数。 # include atdio. h typedef struct ( int orientation ; char rpt_name[25]; char rpt_path[40]; int destination; char output_file[25]; int starting_page; int ending_page; char db_name[25]; char db_path[40]; int draft_quality; )RPT_PARMS; void main (void); int print_report (RPT_PARMS* ); void main (void) { RPT_PARMS rpt_parm; /*define the report parameter structure variable * / /* set up the report parameter structure variable to pass to the print_report 0 function */ rpt_parm. orientation = ORIENT_LANDSCAPE; rpt_parm.rpt_name = "QSALES.RPT"; rpt_parm. rpt_path = "Ci\REPORTS" rpt_parm. destination == DEST_FILE; rpt_parm. output_file = "QSALES. TXT" ; rpt_parm. starting_page = 1; rpt_pann. ending_page = RPT_END; rpt_pann.db_name = "SALES. DB"; rpt_parm.db_path = "Ci\DATA"; rpt_pann. draft_quality = TRUE; /*call the print_report 0 function; paaaing it a pointer to the parameteM inatead of paMing it a long liat of 10 aeparate parameteM. * / ret_code = print_report(cu*pt_parm); } int print_report(RPT_PARMS*p) { int rc; /*acccM the report parametcra paaaed to the print_report() function */ oricnt_printcr(p-orientation); Kt_printer_quality((p-draft_quality == TRUE) ? DRAFT ; NORMAL); return rc; } 上例唯一的不足是编译程序无法检查引用print_report()函数时RPT_PARMS结构的10个成员是否符合要求。
创新互联建站成立于2013年,我们提供高端成都网站建设、成都网站制作、网站设计、网站定制、成都全网营销、小程序开发、微信公众号开发、网站推广服务,提供专业营销思路、内容策划、视觉设计、程序开发来完成项目落地,为成都自上料搅拌车企业提供源源不断的流量和订单咨询。
C语言程序中printf函数双引号里的文本过长不能在一行放完, 请问如何把多行的文本连接起来?
把写在不同行的字符串分别用双引号括起来就行了。例如:
printf("xixi"
"haha\n");
C语言程序中printf函数双引号里的文本过长不能在一行放完谁知道如何把多行的文本连接起来
可以用换行符号,比如我要让“好好学习天天向上”分两行显示,则可以这样printf(“好好学习/n天天向上”),这里要说明一下,换行符应该是反斜杠加n才对,不过我手机没有反斜杠符号,所以只能用斜杠/代替了,望不要误解
c语言中 在编辑窗口,如果printf函数内字符过长,想要在编辑窗口换行,而且编译时不出问题,怎么办?
直接换行就行了,编译器在编译的时候会自动进行识别的。如果遇到了;才会认为是语句结束。
文章标题:c语言函数过长 c语言变长参数函数
分享路径:http://scyanting.com/article/ddihhoi.html