回调函数及c调用shell命令

#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>
#include <string.h>

void fun1()
{
   char a[10] = {0};
   char payload[10]= {'1','2','3','4','5','6'};
   memcpy(a,payload,10);
   
   char path[20] = {0};
   sprintf(path,"%s",a);
   printf("path = %s\n",path);

   char cmd[255] = {0};
   sprintf(cmd,"mkdir -p %s > /dev/null 2>&1 | echo ${?}",path);
  
   FILE *fp = NULL;
    fp = popen(cmd,"r");
   fclose(fp);
   
}

void (*mediacallback)(char type, char status, char *path, void *tempdata, int arg) = NULL;


void api_setTakeCallBack(void(*callback)(char type, char status, char *path, void *tempdata, int arg)) {
       puts("---------api_setTakeCallBack--------------");
       mediacallback = callback;
}

int api_takePic(char type, char status, char *_pic_path, char *_name) {
       puts("----------api_takePic------------");
}

void MediaRegister(char type, char st, char *path, void *tempdata, int arg) {
       puts("---------MediaRegister-----------");
}

void fun()
{
     static int i = 0;
     i++;
     printf("--------i = %d---------\n",i);
}

void fun2()
{   int i;
    printf("----------i = %d--------\n",i);
}

int main()
{
   
//    api_setTakeCallBack(MediaRegister);

  // api_takePic(0, 0, 0, 0);

  // mediacallback(1, 0, 0, 0, 0);

   // fun();
//    sleep(1);
  //  fun();
    
//    fun2();

      unsigned short int a = 0;
   while (1)
   {
      /* code */
      a++;
      printf("---------a = %d---------\n",a);
   };
   
   return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

屁小猪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值