[英]Char equal to char variables in C
我正在嘗試使 char 變量等於 C 中的一系列 char 變量。知道我該怎么做嗎?
例子:
char s1 = "dunno";
char s2 = "what";
char s3;
s3 = s1,s2,s1; //equals dunnowhatdunno
首先,您不能聲明多長度字符,字符只能容納 1 個字符,因此您必須使用字符數組來存儲您的值(或 C++ 中的字符串):
char s1[] = "dunno";
char s2[] = "what";
我們將 s3 存儲為一個有 14 個空槽的空字符:
char s3[14];
然后,要連接兩個字符串,您可以使用 strcat 函數( http://www.cplusplus.com/reference/cstring/strcat/ ):
strcat(s3,s1);
strcat(s3,s2);
strcat(s3,s1);
這需要 s1 並將其添加到 s3,然后將 s2 添加到 s3,最后再次將 s1 添加到 s3。
這是完整的代碼:
#include "stdio.h"
int main(void) {
char s1[] = "dunno";
char s2[] = "what";
char s3[14];
strcat(s3,s1);
strcat(s3,s2);
strcat(s3,s1);
printf(s3);
return 0;
}
所有 3 個連接的輸出結果為
dunnowhatdunno
編輯:正如@lurker 所說,首先將 s1 復制到 s3 以使用“dunno”開始 s3[] 然后擴展 s3[] 會更安全。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.