{
ShellExecute(GetSafeHwnd(),TEXT("孙蠢PRINT"),TEXT("C:\\WINDOWS\\system.ini"),TEXT(""),NULL,SW_SHOWNORMAL) //打印文本
ShellExecute(GetSafeHwnd(),TEXT("OPEN"),TEXT("C:\\WINDOWS\\system.ini"首凯返),TEXT(""),NULL,SW_SHOWNORMAL) //打开文本文件
ShellExecute(GetSafeHwnd(),TEXT("OPEN"),TEXT("C:\\WINDOWS\\Media\\chimes.wav"),TEXT(""),NULL,SW_SHOWNORMAL)//播放音频
ShellExecute(GetSafeHwnd(),TEXT("EDIT"),TEXT("C:\\WINDOWS\\Rhododendron.bmp"),TEXT(""),NULL,SW_SHOWNORMAL) //编辑图片者饥
ShellExecute(GetSafeHwnd(),TEXT("explore"),TEXT("C:\\WINDOWS"),TEXT(""),NULL,SW_SHOWNORMAL) //浏览文件夹
}
#include <stdio.h>int func(int a, int b)
{
return a - b
}
int main()
{
//计算 12-5
int 饥磨旦a = 12, b = 5 //给定两个数
int res //用来记录结果
__asm{ //内联汇编
push b //b压栈
push a //a压栈,注意C中函数接受参数的时候入栈是反烂扰着的
call func //调用游唯函数func, 返回值保存在eax里
mov res, eax //将eax里的值赋给res
}
printf("%d\n", res) //输出结果,得到7
return 0
}
例:
#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”)
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)