当前位置: 技术问答>linux和unix
C中如何取文件中串前的空格?
来源: 互联网 发布时间:2015-08-04
本文导语: 我要在文件中加一行,如果文件如下: int a=1; if ( a> 1) { c=1; b=1; } 成为: int a=1; if ( a> 1) { c=1; //new line b=1; } 我要在c=1 后加一行,/而不是顶格写, 要取得c=1 前的空格/Tab,如何...
我要在文件中加一行,如果文件如下:
int a=1;
if ( a> 1)
{
c=1;
b=1;
}
成为:
int a=1;
if ( a> 1)
{
c=1;
//new line
b=1;
}
我要在c=1 后加一行,/而不是顶格写, 要取得c=1 前的空格/Tab,如何写,
我用sscanf(line, "%sc%s", ls_tab, ls_last);
取回来的ls_tab 没有长度.如何办?
int a=1;
if ( a> 1)
{
c=1;
b=1;
}
成为:
int a=1;
if ( a> 1)
{
c=1;
//new line
b=1;
}
我要在c=1 后加一行,/而不是顶格写, 要取得c=1 前的空格/Tab,如何写,
我用sscanf(line, "%sc%s", ls_tab, ls_last);
取回来的ls_tab 没有长度.如何办?
|
可以一个字符一个字符的读并判断,也可以:
char ss[100];
char *k;
int l;
strcpy(ss, line);
trim(ss); //去头尾空格
k=strstr(line, ss);
l=k-line; //l为长度
没实验过不知道行不行,并且不能判断是空格还是tab。
char ss[100];
char *k;
int l;
strcpy(ss, line);
trim(ss); //去头尾空格
k=strstr(line, ss);
l=k-line; //l为长度
没实验过不知道行不行,并且不能判断是空格还是tab。