C++怎么把写入文本的文本直接指向指定的字符
比如我
txt里面有123 语文
456
789 英语
当我输入456时,先匹配到456 是存在的然后我想让文本指针指向到456 后面然后在一个命名的函数里给456添加科目结果成 456 数学?怎么才能把文本指针指向到456后面而不会指向到其他位置?求教~本人刚学不久很多不会。就是根据自己输入的数字,然后指针指到该数字的后面 ----------------------------------------------------------------下面是代码------------------------------------------------------
#include<iostream>
#include <fstream>
#include <string>
#include <string.h>
#define N 3using namespace std;
typedef struct STU
{ int num;
string subject;}STU;
void main(){
//在文件中写入学号和科目
string number;
string name;
ofstream outstuf ;
outstuf.open( "test.txt" , ios::app|ios::binary ) ;
if ( !outstuf )
{ cerr << "文件不存在" << endl ;
abort(); }
cin>>number;
number=number+" ";
outstuf.seekp(0,ios::end); //多这名,文件指针移到尾
outstuf<<number.c_str();
//判断学号是否存在
STU stu[N];
for(int a=0;a<n;a++)in>>stu[a].num>>stu[a].subject;
for(int i=0;a<n;i++)if(number == stu[i].num){cin>>name;outstuf<<name.c_str()<<"\r\n";}outstuf.close();
这样做不行啊;能匹配到456存在,但是在写入科目的时候,它不是写在456的后面,而是最后一行。 比如:
----------------------------------------------------------------------------------------------怎么解决。我新手。能在原代码改下最好了。千万别for (i=0;i<3;i++) if (s2[i].id==456) { strcpy(s2[i].name,"LiSi"); k=i; break;};因为我输入的数字是随机的,我希望能输入数字后能匹配到数字存在,然后在把指针指向数字后面,方便在数字后面添加科目。不是仅仅在456后面。也可能是其他的数字
请用简单点的语言,因为我刚学不久,很多代码还不懂, 最好能在原代码改下