重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

c语言文本定位函数 c语言字符定位

C语言中如何定位文件txt的光标

1、使用fseek函数即可更改文件指针的位置。

创新互联建站专业提供成都温江机房服务,为用户提供五星数据中心、电信、双线接入解决方案,用户可自行在线购买成都温江机房服务,并享受7*24小时金牌售后服务。

函数名: fseek

功 能: 重定位流上的文件指针

用 法: int fseek(FILE *stream, long offset, int fromwhere);

描 述: 函数设置文件指针stream的位置。如果执行成功,stream将指向以fromwhere为基准,偏移offset个字节的位置。如果执行失败(比如offset超过文件自身大小),则不改变stream指向的位置。

返回值: 成功,返回0,否则返回其他值。

2、例子:

fseek(fp,100L,0);//把文件内部指针移动到离文件开头100字节处;

fseek(fp,100L,1);//把文件内部指针移动到离文件当前位置100字节处;

fseek(fp,-100L,2);//把文件内部指针退回到离文件结尾100字节处。

C语言 文件定位

C语言文件定位,主要依靠fseek函数实现,具体代码如下,

#include stdio.h

int main(int argc, char *argv[])

{

FILE *fp=NULL;

long len=0L;//文件长度

fp=fopen("test.dat","rb");//假设当前目录有test.dat文件

if(!fp)//检查文件打开是否正常

{

printf("文件打开失败,程序退出!\n");

exit(1);

}

fseek(fp,0L,SEEK_END);//文件定位到文件末尾

len=ftell(fp);//获取文件长度

if(len/10240)

printf("文件大小为%ldKB!\n",len/1024);

else

printf("文件大小为%ldB!\n",len);

rewind(fp);//文件指针移到开始处

if(fp)//关闭文件

{

fclose(fp);

fp=NULL;

}

return 0;

}

int fseek( FILE *stream, long offset, int origin );函数fseek()为文件指针stream设置位置数据。origin的值应该是下列值之一,

SEEK_SET(从文件的开始处开始搜索)

SEEK_CUR(从当前位置开始搜索)

SEEK_END(从文件的结束处开始搜索)

fseek()成功时返回0,失败时返回非零。

C语言查找字符串位置函数。请高手帮忙解决

#includestdio.h

#includestring.h

int findstr(char *s_str,char *d_str);

int main(void) {

char s1[80],s2[80];

int n;

printf("请输入一个字符串:");

gets(s1);

printf("请输入你要查找的字符串:");

gets(s2);

n=findstr(s1,s2);

printf("%s在%s里共有%d个\n",s2,s1,n);

return 0;

}

int findstr(char *s_str,char *d_str) {

int i,j,k,count=0;

char temp[80];

int length=strlen(d_str);

for(i=0;istrlen(s_str);i++) {

k=0;

for(j=i;ji+length;j++)

temp[k++]=s_str[j];

temp[k]='\0';

if(!strcmp(temp,d_str)) count++;

}

return count;

}

C语言实现定位一字符串的首位置

我知道了,你不要用scanf()来完成字符串的输入,因为scanf()默认空格,回车,

制表符

都是字符串结束的标志

所以

用gets()函数,它允许输入空格,只有回车后,字符串才结束输入

程序如下

#includestdio.h

main()

{

int

i;

char

a[50];

定义数组

gets(a);

输入字符串

while(a[i]!='a')

判断位置

i++;

printf("位置在%d位",i+1);

}

如果哪有看不懂的,可以补充


本文名称:c语言文本定位函数 c语言字符定位
文章链接:http://cqcxhl.com/article/hjsdph.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP