• PTA L1-042 日期格式化(字符数组与string的相互转换)


    原题
    主要通过这题介绍 C++ 中如何将字符数组与字符串的相互转换

    参考博客

    字符数组转字符串:

    char a[1000];
    string s(&a[i],&a[j]);//i为要转化的其实位置,j为末尾位置加一
    

    字符串转字符数组

    #include<bits/stdc++.h>
    using namespace std;
    char a[15];
    int main()
    {
        string s;
        cin>>s;
        strncpy(a,s.c_str(),s.length()+1);//字符强制转化为字符串函数,末尾同样加一
        cout<<a;
    }
    
    

    AC代码:

    #include<bits/stdc++.h>
    using namespace std;
    char s[1000];
    int main()
    {
          string a,b,c;
          cin>>s;
          int n=strlen(s),flag=1,x;
          string S(&s[2],&s[6]);//将字符数组转换为字符串
          cout<<S<<endl;
          for(int i=0;i<n;i++)
          {
             if(s[i]=='-'&&flag)
             {
               a=S.substr(0,i);
               x=i;
               flag=0;
             }
             else if(s[i]=='-')
             {
               b=S.substr(x+1,i-x-1);
               x=i;
               break;
             }
          }
          c=S.substr(x+1);
          cout<<c<<'-'<<a<<'-'<<b;
    return 0;
    }
    
    

    其实这题可以直接将原字符数组转换为三个字符串,不用上面这么麻烦....

    戒骄戒躁,百炼成钢!
  • 相关阅读:
    Redis之数据持久化RDB与AOF
    linux命令
    路由选择协议
    三次握手+滑动窗口
    JSP的文件上传
    JSP的会话(Session)跟踪
    JSP的Cookie处理
    JSP的过滤器
    JSP的表单处理
    JSP中HTTP状态码
  • 原文地址:https://www.cnblogs.com/Pecoz/p/12444888.html
Copyright © 2020-2023  润新知