Tag: 分隔符

在C中作为小数分隔符的字符

我写了一个从字符串中提取double的函数。 像asfas123123afaf到123123或afafas12312.23131asfa到12312.23131使用点作为小数点分隔符。 这是代码: double get_double(const char *str, char sep) { char str_dbl[80]; size_t i,j; char minus; double dbl; for (minus = 1, i = j = 0; i = ‘0’ && str[i] <= '9') || (str[i] == 'e' || str[i] == 'E') ) { str_dbl[j++] = str[i]; minus = 0; } } str_dbl[j] = '\0'; […]

以逗号分隔的字符串的解析函数

假设我有一个像这样的字符串”cmd,param1,param2″ 。 String是Arduino String类型。 https://www.arduino.cc/en/Reference/String 我想提取用逗号分隔的每个子字符串。 我已经成功编写了像这样的特定案例的代码。 这是代码; String = str_data(‘cmd,param1,param2’); int firstCommaIndex = str_data.indexOf(‘,’); int secondCommaIndex = str_data.indexOf(‘,’, firstCommaIndex+1); String cmd = str_data.substring(0, firstCommaIndex); String param1 = str_data.substring(firstCommaIndex+1, secondCommaIndex); String param2 = str_data.substring(secondCommaIndex+1); 我的问题是有一个解决一般情况的函数。 该字符串可以用任意数量的逗号分隔。 我想有一个看起来像这样的function; String parserCommaDelimited(String input_delimited_str, int nth_param_num) { //implementation } 假设input_delimited_str=”cmd,param1,param2,param3,param4″ parserCommaDelimited(input_delimited_str, 1)返回”cmd” 。 parserCommaDelimited(input_delimited_str, 5)返回”param4″ 。

在C中拆分带有多字符分隔符的char字符串

我想基于多字符分隔符拆分char *string 。 我知道strtok()用于分割字符串,但它适用于单字符分隔符。 我想基于诸如”abc”子字符串或任何其他子字符串来拆分char * string。 如何实现?

无法连接strtok的输出变量。 strcat和strtok

我已经花了几个小时在这个程序上,并花了几个小时在线搜索我的方法的替代品,并在整个晚上一直困扰着崩溃和错误…… 我有一些我想用这段代码实现的东西。 首先,我将解释我的问题,然后我将发布代码,最后我将解释我对该程序的需求。 程序只输出单个单词,连接函数什么都不做。 这似乎应该足够简单来修复…… 我的第一个问题是我似乎无法使concatenate函数工作,我使用了通用的strcat函数,它没有工作,也没有我在互联网上找到的另一个版本(这个函数在这里使用,它被称为“mystrcat” )。 我希望用字符串读取程序并删除“分隔符”以创建由原始字符串中的每个单词组成的单个字符串。 我正在尝试使用strtok和strcat函数。 如果有一个更简单或更简单的方式请尽我所有的耳朵。 另一个问题,不一定是一个问题,而是一个丑陋的混乱:主要的七行。 我更喜欢按如下方式初始化变量:char variable [amt]; 但我发现strtok的代码是使用指针,而strcat函数的代码是使用指针。 更好地理解字符串的指针和地址可能会帮助我长期。 但是,我想以任何必要的方式摆脱其中的一些线索。 我不能只有2行专用于2个变量。 当我有10个变量时,我不想要30行顶部… #include #include #include char *mystrcat(char *output, char *firstptr); int main() { char str[] = “now # is the time for all # good men to come to the # aid of their country”; char delims[] = […]

在两个分隔符之间提取数据

我只想知道是否可以获取两个分隔符之间存在的数据(分隔符是一个字符串)。 例如,原始字符串如下 %20Conference%20successfully%20modified%200117246%20%20%20 我想要标签之间存在的数据。 我需要数据的字符串可以是不同的。 字符串也可以是这样的 %20Conference%20deleted</text%20%200116976%20%20%20Number%20of%20conferences%20deleted%201%20%20%20 但我总是需要标签之间的数据。 那么在C语言中是否可能还是有其他选择?

用C ++编写的strtok()模拟

我只是找不到一个算法来将字符串拆分成多个分隔符。 我知道如何用istringtream用空格分割字符串,用getline用单分隔符分割字符串。 我怎样才能将它们连接起来。 例如: 输入 : This -is-a!,string; 输出 : This is a string