在C中的字符串中插入动态变量值

时间:2014-04-16 16:32:30

标签: c string insert

我正面临这个问题..

假设我有一个字符串

- > char * str =" abc; 20; xyz&#34 ;; 其中整数变量b = 20

现在每当我更新变量' b'时,我们现在说b = 40并读取字符串,它应该读作

" ABC; 40; XYZ"

任何人都可以帮助我使用适当的命令或用户定义的函数来实现这一点。

谢谢, 拉夫

1 个答案:

答案 0 :(得分:0)

如果您想评估' b'从字符串中你可以做到这一点:

char input[] = "abc;40;xyz";
int b = -1;

sscanf(input,"%*[^';'];%d%*s", &b);

printf("b = %d\n", b); // b = 40

如果您想构建值为' b'的字符串。你可以这样做:

char *output = malloc(20*sizeof(char));
int b = 40;

snprintf(output,20,"abc;%d;xyz",b);
printf("output = %s\n",output); // output = abc;40;xyz