• 递归调用


    递归列举

    printd(123)时,第一次调用printd的参数n = 123.它把12传递给printd的第二次调用,后者
    又把1传递给printd的第三次调用。第三次调用printd时首先将打印1,然后再返回到第二次调
    用。从第三次调用返回后的第二次调用同样也将先打印2,然后再返回到第一次调用。返回到
    第一次调用时将打3,随之结束函数的执行。

    void printd(int n)
    {
       if (n < 0)
       {
          putchar('-');
          n = -n;
       }
       if (n / 10)
        printd(n / 10);
       putchar(n % 10 + '0');

    }

    举123为例子

    int strcmp(char *s , char *t)
    {
       int i;
       for (i = 0 ; s[i] == t[i] ; i++)
        return 0;
       return s[i] - t[i];
    }
    原型声明: extern char *strcpy(char *dest , const char *src);
    功能:把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间
    说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间容纳src的字符串。
    返回指向dest的指针。

    int readlines(char *lineptr[] , int maxlinex)
    {
       int len, nlines;
       char *p, line[MAXlEN];
     
       nlines = 0;
       while ((len = getline(line , MAXlEN)) > 0)
       {
          if (nlines >= maxlines || p = alloc(len) == NULL)
           return -1;

          else
          {
             line[len - 1] = '\0';
             strcpy(p , line);
             lineptr[nlines++] = p;
          }
       }
       return nlines; 


    }

  • 相关阅读:
    html常用标签与扩展(标签语义化、Doctype)
    html认识
    兼容性问题统计
    最短的包含字符串 (尺取法)
    与7 无关的数(前缀和)
    子序列(尺取入门)
    孪生素数
    vector 详解
    进制转换(高级版^^)
    容斥 mobius反演
  • 原文地址:https://www.cnblogs.com/fengbo/p/3122638.html
Copyright © 2020-2023  润新知