c语言中字符串截断函数 c语音截取字符串

C语言中字符切割函数split的实现#include stdio.h
#include string.h
// 将str字符以spl分割,存于dst中,并返回子字符串数量
int split(char dst[][80], char* str, const char* spl)
{
int n = 0;
char *result = NULL;
result = strtok(str, spl);
while( result != NULL )
{
strcpy(dst[n++], result);
result = strtok(NULL, spl);
}
return n;
}
int main()
{
char str[] = "what is you name?";
char dst[10][80];
int cnt = split(dst, str, " ");
for (int i = 0; icnt; i++)
puts(dst[i]);
return 0;
}
C语言函数字符串截取分割C标准库中提供了一个字符串分割函数strtok();
实现代码如下:
#include stdio.h
#include string.h
#define MAXSIZE 1024
int main(int argc, char * argv[])
{
char dates[MAXSIZE] = "$GPGGA,045950.00,A,3958.46258,N,11620.55662,E,0.115,,070511,,,A*76 ";
char *delim = ",";
char *p;
printf("%s",strtok(dates,delim));
while(p = strtok(NULL,delim))
{
printf("%s",p);
}
printf("\n");
return 0;
}
运行结果截图如下:
c语言如何截取字符串的一部分用strncpy函数c语言中字符串截断函数,函数签名
char * strncpy(char *dest, const char *src, size_t n);
比如要是从src第2个字符开始截取3个字符c语言中字符串截断函数,可以用
strncpy(dest, src + 2 - 1, 3);
c语言截断字符串//写法很多,我提供一份源码,仅供参考 。
#include stdio.h
#include string.h
//字符串分割函数
int GetToken(char *pszSrc, char *pszSplit, char *pszDest)
{
int iPos;
char *pPtr = NULL;
【c语言中字符串截断函数 c语音截取字符串】pPtr = strstr(pszSrc, pszSplit);
if( pPtr )
{
iPos = strlen(pszSrc) - strlen(pPtr);
strncpy(pszDest, pszSrc, iPos);
strcpy(pszSrc, pPtr + strlen(pszSplit));
pszDest[iPos] = '\0';
}
else
{
iPos = strlen(pszSrc);
strncpy(pszDest, pszSrc, iPos);
pszDest[iPos] = '\0';
pszSrc[0] = '\0';
return 0;
}
return 1;
}
int main()
{
char szData[] = "1234:01201407291000000001:abcdefgskskjdfskdjskfjsfsdjf";
char szFiled1[8];
char szFiled2[32];
char szFiled3[64];
GetToken(szData, ":", szFiled1);
GetToken(szData, ":", szFiled2);
GetToken(szData, ":", szFiled3);
printf("Filed1=%s\nFiled2=%s\nFiled3=%s\n", szFiled1, szFiled2, szFiled3);
return 0;
}
希望能够帮助到你,你的好评是我前进的动力 。
c语言中字符串截断函数的介绍就聊到这里吧,感谢你花时间阅读本站内容 , 更多关于c语音截取字符串、c语言中字符串截断函数的信息别忘了在本站进行查找喔 。

    推荐阅读