[英]strcat() int variable + C
我需要在這個表格上打印一些東西:
[1] "text" [2] "text" [3] "text"
我正在使用strcat()
,所以我想將“文本”連接到緩沖區。
我在緩沖區中一次獲取一個元素的“文本”,我需要將它連接到一個字符串。
問題是我似乎無法弄清楚如何獲得前面的 [number] 部分。
首先,是否可以strcat()
一個int
?
我試過了,但似乎無法讓它工作。
其次,是否可以在變量周圍獲取'[' ']'
? (我需要為每個循環增加int
值)。
這可能是一個愚蠢的問題,但我真的不知道如何解決這個問題,我需要菜單在這個表單或類似的東西上。
首先,嘗試sprintf
將您的整數放入緩沖區字符串中。 然后,將此字符串與您想要的字符串連接起來。
像這樣的東西:
char string[STRING_SIZE] = "text "
char buffer[BUFFER_SIZE];
sprintf(buffer, "%d", number);
strcat(string, buffer)
根據您的情況調整大小。
您可以使用計數器來了解每個文本字符串的編號:
char buffer[BUFFER_SIZE];
int counter = 1;
while (/* condition for continuing reading buffer */) {
buffer = //readBuffer();
printf("[%d] %s ", counter, buffer);
counter++;
}
printf("\n");
首先,是否可以將 strcat() 設為 int?
不,您必須將 int 轉換為 char *。 查看以下實現: http : //www.opensource.apple.com/source/groff/groff-10/groff/libgroff/itoa.c 。
其次,是否可以在變量周圍獲取 '[' ']' ?
只需使用 strcat 添加此
strcat( buffer, text1 );
strcat( buffer, "[" )
// ...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.