我這樣做是爲了添加一些文字:索引字符數組追加一個字符串
char text[100];
strcpy(text, "Hello");
char input[] = "random";
strncpy(text + strlen(text), input, sizeof(text) - strlen(text));
我這樣做,它似乎做工精細的ASCII文本。但是我擔心指針算術不安全。如果輸入是UTF-8會怎麼樣?
僅供參考,當我做text + strlen(text)
我得到一個指向句子的末尾,然後追加到句末。
即
text => |h|e|l|l|o|NUL||||||....
text + strlen(text) => |NUL|||||.....
爲什麼不使用'strcat'? – ameyCU
你對utf-8的關注是什麼? –
其實我很困惑。我擔心「text + 1」不等於文本[1]的情況。 –