怎么调用子程序

怎么调用子程序,第1张

所谓程序是能够完成一定功能的程序模块,其自身不能自动执行,而只能靠上一级程序乱早调用执行,在结构化程序设计中,子程序是实现整个程序功能的基础;

子程序的执行至少包含调用及返回两个步骤。通过执行子程哗闹雀序调用指令,CPU会自动地保存当前程序断点(程序被打断的地方),然后转向执行被调用的子程序;当子程序执行完毕后,通弯桥过执行子程序返回指令使CPU返回断点处继续执行指令。

例:

#include<stdio.h>

intsushu(intx)

{inti

for(i=2i<xi++)

if(x%i==0)break

if(i==x)return1

elsereturn0

}

main()

{inti,n=0

for(i=2i<=1000i++)

if(sushu(i)==1)n++:

printf("n=%d",n)

}

扩展旦漏资料

使用vfork()新建子进程,然后调用exec函数族

#include<弯迟散unistd.h>

main()

{

char*argv[]={“ls”,”-al”,”/etc/passwd”埋氏,(char*)}

if(vfork()==0)

{

execv(“/bin/ls”,argv)

}else{

printf(“Thisistheparentprocess\n”)

}

}

调用子程序很简单的,主程序里加M98Pxxxx(xxxx为子程序的程序号),另外还要编一个程序为Oxxxx的程序,程序颂消宽的野亮结尾一定要以M99结尾.加工运行主程序时执行到M98Pxxxx后就会自动调用Oxxxx程序,一直执行至遇到M99后会自动返回主程序的.

如用G10座标偏移一次加工5个产品的主程序

以下是加工的主程序:

Oxxxx

G28 U0 W0

G10 P0 X0 Z0

M98 P....(调用加工程桥蠢序) 第一个零件

M1

G10 P0 X0 Z_(Z为一个总长)第二个零件

M98 P....

M1

G10 P0 X0 Z_(Z为二个总长)第三个零件

M98 P....

M1

G10 P0 X0 Z_(Z为三个总长)第四个零件

M98 P....

M1

G10 P0 X0 Z_(Z为四个总长)第五个零件

M98 P....

M1

G28 U0 W0

G10 P0 X0 Z0

M30

子程序格式:

O....

T0101 M3 S2000

.

.

.

M99


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12421615.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存