我正在解決在C中設置的問題,現在,我卡住了。這是我無法弄清楚的這一行代碼。串聯字符串和int類型變量在c
str + n;
其中,char str[STRING_LENGTH]
和int n
我工作過,代碼很多JAVA,並假設到現在,它的字符串和整數conatenation,我現在懷疑。
任何想法這意味着什麼。如果用一個小例子來解釋它會更有用。
我正在解決在C中設置的問題,現在,我卡住了。這是我無法弄清楚的這一行代碼。串聯字符串和int類型變量在c
str + n;
其中,char str[STRING_LENGTH]
和int n
我工作過,代碼很多JAVA,並假設到現在,它的字符串和整數conatenation,我現在懷疑。
任何想法這意味着什麼。如果用一個小例子來解釋它會更有用。
str
可視爲指向與長度STRING_LENGTH的字符序列相關聯的存儲器地址。因此,c指針算術正在您的陳述str + n
中被利用。現在正在做的是指向字符序列中字符的存儲地址,即n
,,。
它是指針算術。例如:
char* str = "hello";
printf("%s\n", str + 2);
輸出:。因爲str + 2
指向str
後的2個元素,因此第一個l
。
是@Yu Hao和@Bathsheba的回答是對的。
但是,如果你想要進行連接,你可以去下面的代碼片段。
char string[]="hello";
int number=4;
char cated_string[SIZE_CATED_STRING];
sprintf(cated_string,"%s%d",string,number);
printf("%s",cated_string);
編碼愉快。
謝謝!這有助於其他代碼不起作用 – meanderingmoose