例題1: | 文字列s2を領域s1に高々size文字までをコピーするサブルーチン「void mystrncpy(char *s1, const char *s2, int size)」を作成せよ. |
---|---|
s1 の領域はサブルーチンが呼ばれる前に確保されているものとする.s2の終端に至る前に size ぶんだけコピーをすると終了する.size ぶんだけコピーをする前に,s2の終端がある場合は,終端をコピーし,直ちに終了する. | |
返り値はない. | |
※ 組み込み関数 strncpy と若干仕様が異なる. |
課題1: | 2つの文字列を比較するサブルーチン「int mystrcmp(const char *s1, const char *s2)」を作成せよ. |
---|---|
返り値は,s1 が s2 よりも小さいならば,負の整数値,等しいならば 0,大きいならば正の整数値とする. | |
プログラムファイル名 ⇒ prac0101.c |
課題2: | 部分文字列の位置を探すサブルーチン「char *mystrstr(const char *s1, const char *s2)」を作成せよ. |
---|---|
返り値は,部分文字列の開始を指すポインタを返す.もし,部分文字列が見つからないならば NULL を返す. | |
プログラムファイル名 ⇒ prac0102.c |
課題3: | 簡易BM法による部分文字列探索サブルーチン「char *mystrstr(const char *s1, const char *s2)」を作成せよ. |
---|---|
返り値は,部分文字列の開始を指すポインタを返す.もし,部分文字列が見つからないならば NULL を返す. | |
プログラムファイル名 ⇒ prac0103.c |