C 语言分词

本文探讨了C语言中的分词操作,重点介绍了标准库函数strtok的使用,该函数能够根据指定的分隔符将字符串分割成多个属性。
摘要由CSDN通过智能技术生成

分词是对字符串的基本操作,比如一行数据表示一个记录,记录中使用的分割符就可以做为分词符号,使用这个分词符号,可以得到记录的所有属性

C 的标准库中 “strtok” 提供了这样的功能,它的使用方式如下:

#include <stdio.h>
#include <string.h>
#include <assert.h>

class CStrTok
{
public:
	void init_pattern(char *pattern) {
		strncpy(m_pattern, pattern, PATTERN_SIZE);
	} 
	void token(const char *s) {
		m_nums_of_token = 0;
		memset(m_token_container, 0, TOKEN_SIZE_MAX);
		strncpy(m_buf, s, BUFSIZ);
		m_token_container[m_nums_of_token] = strtok(m_buf, m_pattern);
		while (m_token_container[m_nums_of_token] != NULL) {
			++m_nums_of_token;
			assert(m_nums_of_token!=TOKEN_SIZE_MAX);
			m_token_container[m_nums_of_token] = strtok(NULL, m_pattern);
		}
	} 
	size_t nums_of_token() {
		return m_nums_of_token;
	} 
	char * GetTokenStr(int index) {
		return m_token_container[index];
	}

	void reset() {
		m_nums_of_token = 0;
	}

priva
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值