char *の部分文字列を取得する


1 Answers

あなたが部分文字列の位置と長さを知っていると仮定すると:

char *buff = "this is a test string";
printf("%.*s", 4, buff + 10);

部分文字列を別のメモリ宛先にコピーすることで同じことが実現できますが、既にメモリに格納されているので妥当ではありません。

これは、ポインタを使って不要なコピーを避ける良い例です。

Question

この質問には既に回答があります:

たとえば、私はこれを持っています

char *buff = "this is a test string";

"test"を取得したい どうやってやるの?




strstrを使用できます。 hereコード例

返された結果はnullで終了しないことに注意してください。




Related