return strcpy(malloc(strlen(s) + 1), s);

むしろここまでやってくれたら尊敬する

ちなみにstr[a-z].*という名前の外部関数をプログラム側で定義するのはだめだって話を宿題スレでやってた。