ページ 11

無題

Posted: 2009年5月27日(水) 23:41
by 素人
問. 文字列sの各文字を右に1文字ずつ移動させる.末尾の文字は先頭へ移す.関数の戻り値は文字列s(の先頭を指すポインタ値).

これを実行するプログラムが掲載されているURLを教えてください。

Re:無題

Posted: 2009年5月28日(木) 00:08
by たいちう
自作してこの掲示板に投稿したらいかがですか。

Re:無題

Posted: 2009年5月28日(木) 00:49
by Hermit
こんな感じでしょうか?
#include <stdio.h>
#include <string.h>

int main() {
	char str[/url] = "abcdefg";
	size_t llen = strlen(str) - 1;
	char endc = str[llen];
	printf("%s\n",str);
	memmove(&str[1],str,llen);
	*str = endc;
	printf("%s\n",str);
	return 0;
}
URL でしたね(^^;
今私が書いたので、
http://dixq.net/board/
です。

Re:無題

Posted: 2009年5月28日(木) 09:01
by kazuoni
質問内容がいまいちわからない気がするのですが・・・

>文字列sの各文字を右に1文字ずつ移動させる

関数で実装しているってことですかね?

>関数の戻り値は文字列s(の先頭を指すポインタ値).

ということは、Hermitさんの例でいくと、
"abcdefg"の"a"のアドレスってことになりますが・・・?

とにかく、ずっと探しまわるよりは、
たいちうさんのおっしゃるとおり、自分で考えたほうが早いと思います。

Re:無題

Posted: 2009年5月29日(金) 00:04
by Hermit
関数だったか
読解力が甘いな・・俺(^^;