示例
#include <bits/stdc++.h>
using namespace std;
int main()
{
string a;
a.resize(100); //需要预先分配空间
scanf("%s", &a[0]);
printf("%s\n", a.c_str());
return 0;
}
成员函数
例题
PAT甲级 1028 List Sorting (25 分)
#include <bits/stdc++.h>
using namespace std;
struct node
{
string id,name;
int grade;
}a[100005];
bool cmp1(const node a,const node b)
{
return a.id<b.id;
}
bool cmp2(const node a,const node b)
{
if(a.name!=b.name)return a.name<b.name;
else return a.id<b.id;
}
bool cmp3(const node a,const node b)
{
if(a.grade!=b.grade)return a.grade<b.grade;
else return a.id<b.id;
}
int main()
{
int n,c;
scanf("%d %d",&n,&c);
for(int i=0;i<n;i++)
{
a[i].id.resize(10);//需要预先分配空间
a[i].name.resize(10);
scanf("%s %s %d",&a[i].id[0],&a[i].name[0],&a[i].grade);
}
if(c==1) sort(a,a+n,cmp1);
if(c==2) sort(a,a+n,cmp2);
if(c==3) sort(a,a+n,cmp3);
for(int i=0;i<n;i++)
{
printf("%s %s %d\n",a[i].id.c_str(),a[i].name.c_str(),a[i].grade);//成员函数c_str()
}
return 0;
}