-4

私の文字列がs="Computer". Java でコーディングしていた場合は、C=s.substring(1,3)が返されC="oup";ます。

これを正確に行う C の組み込みクラス関数はありますか? ポインタは使用しないでください。

4

2 に答える 2

1

ポインタを使わずにそれを行う方法はありません。ポインターの使用:

#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);
}
于 2013-09-20T17:27:48.517 に答える
0

試す:

char dest[N];
snprintf(dest, sizeof dest, "%.*s", len, src+start);

結果を印刷するだけの場合は、結果の文字列を保存するためのスペースは必要ありません。ただ行う:

printf("%.*s", len, src+start);
于 2013-09-20T17:40:00.340 に答える