精华内容
下载资源
问答
  • shell 函数

    2017-12-04 14:52:00
     函数里可以显示 return,那只能是整数,然后函数调用通过 $?获取  通过a=`foo`获得的数据是foo里面echo的字符串 函数调用:  foo arg1 arg2 。。。 转载于:https://www.cnblogs.com/brai...

    function foo() {

    }

    function前缀可选

     

    接受参数:

      第一个是$1 

     

    返回值:

      函数里可以显示 return,那只能是整数,然后函数调用后通过  $?获取

      通过a=`foo`获得的数据是foo里面echo的字符串

     

    函数调用:

      foo arg1 arg2 。。。

    转载于:https://www.cnblogs.com/brainstorm/p/7977042.html

    展开全文
  • Shell自定义函数

    2019-12-06 19:49:30
    基本语法 #函数定义 function funname() ...(2)函数返回值只能通过$?系统变量获得,可以显示加:return返回,如果不加,将以最后条命令运行结果,作为返回值,return后跟数值n(0-255)。 例子 计算两数的...

    基本语法

    
    #函数定义
    function funname()
    {
    	Action;
    	[return int;]
    }
    #函数调用
    funname
    

    注:
    (1)在调用函数地方之前,先声明函数,shell脚本是逐行运行。
    (2)函数返回值,只能通过$?系统变量获得,可以显示加:return返回,如果不加,将以最后一条命令运行结果,作为返回值,return后跟数值n(0-255)。

    例子

    计算两个数的和

    [mubai@localhost test]$ touch sum.sh
    [mubai@localhost test]$ vim sum.sh
    
    #!/bin/bash
    function sum()
    {
        s=0
        s=$[ $1 + $2 ]
        echo "$s"
    }
    
    read -p "Please input the number1: " n1;
    read -p "Please input the number2: " n2;
    sum $n1 $n2;
    
    [mubai@localhost test]$ chmod 777 sum.sh
    [mubai@localhost test]$ ./sum.sh 
    Please input the number1: 2
    Please input the number2: 5
    7
    

    展开全文
  • (2)函数返回值只能通过$?系统变量获得,可以显示加:return返回,如果不加,将以最后条命令运行结果,作为返回值。return后跟数值n(0-255) 3:案例实操 (1)计算两输入参数的和 [jinghang

    1:基本语法

    [ function ] funname[()]
    {
    	Action;
    	[return int;]
    }
    funname
    

    2:经验技巧

    (1)必须在调用函数地方之前,先声明函数,shell脚本是逐行运行。不会像其它语言一样先编译。
    (2)函数返回值,只能通过$?系统变量获得,可以显示加:return返回,如果不加,将以最后一条命令运行结果,作为返回值。return后跟数值n(0-255)

    3:案例实操

    (1)计算两个输入参数的和
    
    [jinghang@hadoop101 datas]$ touch fun.sh
    [jinghang@hadoop101 datas]$ vim fun.sh
    
    #!/bin/bash
    function sum()
    {
        s=0
        s=$[ $1 + $2 ]
        echo "$s"
    }
    
    read -p "Please input the number1: " n1;
    read -p "Please input the number2: " n2;
    sum $n1 $n2;
    
    [jinghang@hadoop101 datas]$ chmod 777 fun.sh
    [jinghang@hadoop101 datas]$ ./fun.sh 
    Please input the number1: 2
    Please input the number2: 5
    7
    
    展开全文
  • 一个进程可以使用 FreeConsole 函数来释放与之关联的控制台,之后它就可以调用函数来创建一个新的控制台或使用 AttachConsole 函数来关联另一个控制台。 如果主调进程创建了一个子进程,则子进程也将继承这个...
  • 在 c/c++ 程序中,可以使用 system()函数运行命令行命令,...首先用popen打开一个命令行的管道,然后通过fgets获得该管道传输的内容,也就是命令行运行的结果。 在linux上运行的例子如下: void execut...

    在 c/c++ 程序中,可以使用 system()函数运行命令行命令,但是只能得到该命令行的 int 型返回值,并不能获得显示结果。例如system(“ls”)只能得到0或非0,如果要获得ls的执行结果,则要通过管道来完成的。首先用popen打开一个命令行的管道,然后通过fgets获得该管道传输的内容,也就是命令行运行的结果。

    在linux上运行的例子如下:

    1. void executeCMD(const char *cmd, char *result)   
      {   
          char buf_ps[1024];   
          char ps[1024]={0};   
          FILE *ptr;   
          strcpy(ps, cmd);   
          if((ptr=popen(ps, "r"))!=NULL)   
          {   
              while(fgets(buf_ps, 1024, ptr)!=NULL)   
              {   
                 strcat(result, buf_ps);   
                 if(strlen(result)>1024)   
                     break;   
              }   
              pclose(ptr);   
              ptr = NULL;   
          }   
          else  
          {   
              printf("popen %s error\n", ps);   
          }   
      }  

    在这段代码中,参数cmd为要执行的命令行,result为命令行运行结果。输入的cmd命令最好用... 2>&1 的形式,这样将标准错误也读进来。

    一个完整的例子是:

    1. #include <stdlib.h>
      #include <stdio.h>
      #include <unistd.h>
      
      int main()
      {
              FILE* fp = NULL;
              char cmd[512];
              sprintf(cmd, "pwd 2>/dev/null; echo $?");
              if ((fp = popen(cmd, "r")) != NULL)
              {
                      fgets(cmd, sizeof(cmd), fp);
                                      pclose(fp);
              }
      
                        //0 成功, 1 失败
              printf("cmd is %s\n", cmd);
      
              return 0;
      }

     有关在 windows 上实现的过程及源码详见:C程序中获得命令行输出结果

    转载于:https://www.cnblogs.com/sylar5/p/6644870.html

    展开全文
  • 你必须知道的495C语言问题

    千次下载 热门讨论 2015-05-08 11:09:25
    5.2 怎样在程序里获得一个空指针? 5.3 用缩写的指针比较“if(p)”检查空指针是否有效?如果空指针的内部表达不是0会怎样? NULL宏 5.4 NULL是什么,它是怎么定义的? 5.5 在使用非零位模式作为空指针的内部...
  • 函数中允许有多个return语句,但每次调用只能一个return 语句被执行, 因此只能返回一个函数值。 2. 函数值的类型和函数定义中函数的类型应保持一致。 如果两者不一致,则以函数类型为准,自动进行类型转换。 ...
  • EDA笔记(7)--子程序

    2020-04-30 15:16:57
    .子程序概述 1.子程序的功能 子程序,是为了更有效地完成重复性的算法设计工作,利用顺序语句来定义和完成算法的的种VHDL程序模块。...(1)过程的调用通过其界面获得个返回值,而函数只...
  • 一个是调用一个可以作为函数调用的Lua值. 使用函数名来调用的版本只能调用Lua全局函数. "..."代表传递给Lua函数的 可变个数的参数. 这使得你可以指定调用的策略.你可以通过 operator[] 来实现 这个功鞥.你可以同...
  • 5.2 怎样在程序里获得一个空指针? 54 5.3 用缩写的指针比较“if(p)”检查空指针是否有效?如果空指针的内部表达不是0会怎样? 55 NULL 宏 56 5.4 NULL是什么,它是怎么定义的? 56 5.5 在使用非零位模式...
  • 《你必须知道的495C语言问题》

    热门讨论 2010-03-20 16:41:18
    5.2 怎样在程序里获得一个空指针? 54 5.3 用缩写的指针比较“if(p)”检查空指针是否有效?如果空指针的内部表达不是0会怎样? 55 NULL 宏 56 5.4 NULL是什么,它是怎么定义的? 56 5.5 在使用非零位模式...
  • 5.2 怎样在程序里获得一个空指针?  5.3 用缩写的指针比较“if(p)”检查空指针是否有效?如果空指针的内部表达不是0会怎样?  NULL宏  5.4 NULL是什么,它是怎么定义的?  5.5 在使用非零位模式作为空指针的...
  •  5.2 怎样在程序里获得一个空指针? 5.3 用缩写的指针比较“if(p)”检查空指针是否有效?如果空指针的内部表达不是0会怎样? NULL宏 5.4 NULL是什么,它是怎么定义的? 5.5 在使用非零位模式作为空指针的...
  • 5.2 怎样在程序里获得一个空指针? 83 5.3 用缩写的指针比较“if(p)”检查空指针是否有效?如果空指针的内部表达不是0会怎样? 84 NULL 宏 85 5.4 NULL是什么,它是怎么定义的? 85 5.5 在使用非零位模式作为空...
  • 5.2 怎样在程序里获得一个空指针? 83 5.3 用缩写的指针比较“if(p)”检查空指针是否有效?如果空指针的内部表达不是0会怎样? 84 NULL 宏 85 5.4 NULL是什么,它是怎么定义的? 85 5.5 在使用非零位模式作为空...
  • 返回值:如果函数调用成功,返回值是菜单资源句柄;如果函数调用失败,返回值是NULL。若想获得更多的错误信息,请调用GetLastError函数。 备注:关闭应用程序之前,用函数DestroyMenu来销毁菜单并释放加载菜单占用...
  • 建立这样一个列表时存在的问题是,你可以调用一个Windows函数,但是该函数能够在内部调用一个函数,而这另一个函数又可以调用一个函数,如此类推。由于各种不同的原因,这些函数中的任何一个函数都可能运行失败...
  • start_routine函数接收一个参数,是通过pthread_create的arg参数传递给它的,该参数的类型为void *,这个指针按什么类型解释由调用者自己定义。start_routine的返回值类型也是void *,这个指针的含义同样由调用者...
  • Authorization.zip

    2019-09-06 15:26:32
    Authorization是一个软件版本停用管理,以及软件防篡改插件功能如下 一.版本过期管理: 例如发布出去的程序犹如泼出去的水,是无法回收回来的,但是如果某个发布出去的版本与公司的决策有冲突 或者有重大的BUG,怎么办呢...
  • java-servlet-api.doc

    2009-10-13 19:34:17
    JavaTMservlets是一个不受平台约束的Java小程序,它可以被用来通过多种方法扩充一个Web服务器的功能。你可以把Servlet理解成Server上的applets,它被编译成字节码,这样它就可以被动态地载入并用效地扩展主机的处理...
  • windows用户称拦截api

    2015-04-06 17:22:24
    开辟这4GB的虚拟地址空间之后,系统会把磁盘上的执行文件映射到进程的地址空间中去(一般是在地址0x00400000,可以通过修改编译选项来修改这个地址)而一个进程运行所需要的动态库文件则一般从0x10000000开始加载。...
  • 线程同步,指一个线程发出某一功能调用时,在没有得到结果之前,该调用不返回。同时其它线程为保证数据一致性,不能调用该功能。 举例1: 银行存款 5000。柜台,折:取3000;提款机,卡:取 3000。剩余:2000 举例2...

空空如也

空空如也

1 2 3 4 5 6
收藏数 106
精华内容 42
关键字:

通过函数调用只能获得一个返回值