如何把一个不定长的string字符串嵌入到另一个字符串中
eg:this %1% a good idea
用is或者is not这样不固定的string来代替%1%组成一个字符串。有大致思路就ok了。如果有代码就更好了。 脚本语言也可以
[解决办法]
#include<stdio.h>#include<stdlib.h>#include<string.h>main(){ char a[10],b[20],c[5]=" is "; char *p="this %1% a good idea"; sscanf(p,"%s",a); sscanf(p,"%*s%*s %[^'/0']",b); strcat(a,c); strcat(a,b); puts(a);}
[解决办法]
用%s可以简单的实现:
#include <stdlib.h>#include <string.h>#include <stdio.h>char* strpl(const char* str, const char* substr){ char* p = (char*)malloc(strlen(str) * sizeof(char)); if(p != NULL) sprintf(p, str, substr); return p;}int main(int argc, char* argv[]){ printf("%s\n", strpl("this %s a good idea", "is")); printf("%s\n", strpl("this %s a good idea", "is not")); return 0;}