如何在变量之间插入文本?示例:整数是a = 1514,我想将其打印为15:14。我该怎么办?
我真的很抱歉,我一直在思考如何问这个问题,这是我唯一想到的事情......提前感谢任何帮助!
答案 0 :(得分:0)
iBug的评论将为您提供上面要求的内容,但是您可以使用sprintf将整数存储在字符串中,然后根据需要对其进行操作。像:
sprintf(&number_string, "%d", int_variable);
然后如果你想总是把文字放在中间,比如:
int num_len = strlen(number_string);
int midpoint = len / 2;
char middle_text[6] = ":foo:";
int mid_text_len = strlen(middle_text);
// allocate space for new string
char *new_string = malloc(len + mid_text_len + 1);
// copy up to the midpoint into the new string
strncpy(new_string, number_string, midpoint);
// then concatenate whatever you want to put in the middle
strcat(new_string, middle_text);
// then concatenate the rest of number_string onto the end
strcat(new_string, number_string+midpoint, num_len-midpoint);
// and make sure it's null terminated.
new_string[len+mid_text_length] = '\0';
警告:我没有测试这段代码,因此它可能与编写完全无关......但是你明白了。