字符串连接

#include <string>
#include <iostream>
#include <stdlib.h>

using namespace std;

int main() {

    int len1, len2, i, j, k = 0, flag = 0;
    string s1, s2;
    char* s;
    getline(cin, s1);
    getline(cin, s2);
    len1 = s1.length();
    len2 = s2.length();
    s = (char*)malloc(sizeof(char) * (len1 + len2 + 1));
    for(i = 0, j = len2 - 1; i < len1 && j >= 0; ) {
        if(flag == 0) {
            s[k++] = s1[i++];
            flag = 1;
        } else {
            s[k++] = s2[j--];
            flag = 0;
        }
    }
    if(i < len1) {
        for(i; i < len1; i++) {
            s[k++] = s1[i];
        }
    }
    if(j >= 0) {
        for(j; j >= 0; j--) {
            s[k++] = s2[j];
        }
    }
    s[k] = '\0';
    cout << s << endl;
    free(s);
    return 0;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容