C语言截取指定字符串

2025-03-23 08:20:51
推荐回答(4个)
回答1:

可改变数组大小,满足你可能的输入状况。

#include

int main(){char str[200]; // 假定输入1行字符串,长度在200以内char s[20][16]; // 假定 用逗号分隔的部分约20个。

每个长度 不超过16字符double d; // 假定数据个数 不超过 20 个int i,j=0,L,n=0;fgets(str,200,stdin)。

 // 读入一行 字符串,含换行符L = strlen(str)。

//计算输入的字符串长度for (i=0;i

扩展资料:

C语言继续发展,在1982年,很多有识之士和美国国家标准协会为了使这个语言健康地发展下去,决定成立C标准委员会,建立C语言的标准。委员会由硬件厂商、编译器及其他软件工具生产商、软件设计师、顾问、学术界人士、C语言作者和应用程序员组成。

1989年,ANSI发布了第一个完整的C语言标准——ANSI X3.159—1989,简称“C89”,不过人们也习惯称其为“ANSI C”。

C89在1990年被国际标准组织ISO(International Standard Organization)一字不改地采纳,ISO官方给予的名称为:ISO/IEC 9899,所以ISO/IEC9899: 1990也通常被简称为“C90”。

1999年,在做了一些必要的修正和完善后,ISO发布了新的C语言标准,命名为ISO/IEC 9899:1999,简称“C99”。在2011年12月8日,ISO又正式发布了新的标准,称为ISO/IEC9899: 2011,简称为“C11”。

参考资料来源:百度百科-c语言

回答2:

  可以使用strstr这个函数:
函数名: strstr
功 能: 在串中查找指定字符串的第一次出现
用 法: char *strstr(char *str1, char *str2);
程序例:
#include
#include
int main(void)
{
char *str1 = "Borland International", *str2 = "nation", *ptr;
ptr = strstr(str1, str2);
printf("The substring is: %s\n", ptr);
return 0;
}

回答3:

#include
void findStr(char * input, char * output)
{
    char * outputStart = strchr(input, '{');
    char * outputEnd = NULL;

    if (NULL != outputStart)
    {
        outputEnd = strchr(input, '}');

        if (NULL != outputEnd)
        {
            memcpy(output, outputStart, outputEnd- outputStart + 1);
        }
    }
    output[outputEnd- outputStart + 1] = '\0';
}

int main(void)
{
    char input[512] = "ca098s789a8sfGMT20141006{value:0}";
    char output[512] = {0};

    findStr(input, output);

    printf("%s\n", output);
    return 0;
}

运行结果:

回答4:

用strstr函数先找到字符串的起始位置“{value:”,然后从起始位置开始找到结束位置“}”。具体用法可以百度搜索下strstr