私の文字列がs="Computer"
. Java でコーディングしていた場合は、C=s.substring(1,3)
が返されC="oup";
ます。
これを正確に行う C の組み込みクラス関数はありますか? ポインタは使用しないでください。
ポインタを使わずにそれを行う方法はありません。ポインターの使用:
#include <stdio.h>
#include <string.h>
int main() {
char *s="Computer";
char sub[20];
strncpy(sub, s+1, 3);
printf("%s\n%s", s, sub);
}
試す:
char dest[N];
snprintf(dest, sizeof dest, "%.*s", len, src+start);
結果を印刷するだけの場合は、結果の文字列を保存するためのスペースは必要ありません。ただ行う:
printf("%.*s", len, src+start);