scanf,printf对string类型的处理

#include <bits/stdc++.h>
using namespace std;
/*
测试用例:
abc
*/
const int N = 110;
int main() {
    string a;

    // scanf读入string的方法
    a.resize(N); //需要预先分配空间
    scanf("%s", &a[0]);

    // printf输出string的方法
    printf("%s\n", a.c_str());

    //正确的字符串的长度:3
    cout << strlen(a.c_str()) << endl;

    //错误的字符串长度:110
    cout << a.size() << endl;

    return 0;
}

posted @ 2022-11-29 12:25  糖豆爸爸  阅读(55)  评论(0)    收藏  举报
Live2D