zoukankan      html  css  js  c++  java
  • 替换空格:剑指offer05

     此题为简单题,较为好理解,主要是将'  '替换'%20',刚开始自己以为可以自己当读取到字符串为空时就可直接置换为‘%20’但发现结果是只能显示‘%20’的部分。错误结果如下:

     1 char* replaceSpace(char* s){
     2     int n=strlen(s);
     3     int i;
     4  //   char *p=(char *)calloc(3*(n+3),sizeof(char));
     5  //   int size=0;
     6     for(i=0;i<n;i++)
     7     {
     8         if(s[i]==' ')
     9         {
    10             s[i]='%20';
    11  //           p[size++]='%';
    12  //           p[size++]='2';
    13  //           p[size++]='0';
    14         }
    15 
    16 //        else
    17 //        {
    18 //            p[size++]=s[i];
    19 //        }
    20     }
    21     return s;
    22 }

    后来参考了别人的代码后发现其实字符数组好像只能存储一个字符。

     因此对其进行了修改。重新申请一个动态内存大小为3*(n+3).。

     1 char* replaceSpace(char* s){
     2     int n=strlen(s);
     3     int i;
     4     char *p=(char *)calloc(3*(n+3),sizeof(char));
     5     int size=0;
     6     for(i=0;i<n;i++)
     7     {
     8         if(s[i]==' ')
     9         {
    10  //           s[i]='%20';
    11             p[size++]='%';
    12             p[size++]='2';
    13             p[size++]='0';
    14         }
    15 
    16         else
    17         {
    18             p[size++]=s[i];
    19         }
    20     }
    21     return p;
    22 }

    结果为:

  • 相关阅读:
    Enum.GetUnderlyingType(obj.GetType())
    Out,ref,params修饰符,可选参数,命名参数
    Linq
    var
    checked,unchecked
    StringBuilder.sb.AppendLine();
    js改变css样式的三种方法
    flex的用途
    clip-path
    json 对象 数组
  • 原文地址:https://www.cnblogs.com/sbb-first-blog/p/13269079.html
Copyright © 2011-2022 走看看