宜しくお願いします。
C言語で質問させてください。
文字列の頭から決まった文字数だけ削除したいのですが、
標準関数?というのでしょうか、便利な関数はないでしょうか?
#include<stdio.h>
#include<string.h>
void main()
{
char moji[/url]="何かしらの文字列";
char moji2[/url]="何かしらの文字列2";
int a;
a=strlen(moji); //←mojiの文字数分をmoji2の頭から削除したい・・・
}
文字列の削除について
Re:文字列の削除について
単に文字数分を削除するなら、
(この関数の戻り値を使用すれば削除されたように見えます)
もし、バッファ内の文字を本当に削除する(削除した分を詰める)なら、
const char* ofs_str( const char* str, int len ){ return str + len; }で、擬似的に削除できます。
(この関数の戻り値を使用すれば削除されたように見えます)
もし、バッファ内の文字を本当に削除する(削除した分を詰める)なら、
void str_shift( char* str, int len ){ char* ofs = str + len; memmove( str, ofs, strlen(ofs) + 1 ); }で、可能なはずです。