ページ 11

ポインタ

Posted: 2008年12月08日(月) 22:44
by macka
どうも、以前作成した下のプログラムで今はthe many peoplethe many peopleと出力されるのをthe many many peopleというように出力するようにしたいのですが、うまくいきません。うまくいくようにするにはどうすればよいでしょうか?お願いします。
#include<stdio.h>
#define B 256

int main(void)
{
	char str[/url]="the many people";
	char ptr,*s,*p;
	int i=0;

	s=str;
	p=ptr;
	do{
		
		(*(p+i)=*(s+i));
		
	}while('\0'!=*(s+i++));
	while(*p)p++;
    while(*p++=*s++);
	printf("%s\n",ptr);
	getchar ();
	getchar ();
	getchar ();
	return 0;
}(/pre)

Re:ポインタ

Posted: 2008年12月08日(月) 23:02
by box
1文字ずつ処理するかわりに、空白で区切った単語として処理する方がよいかもしれません。

Re:ポインタ

Posted: 2008年12月08日(月) 23:19
by macka
書き忘れていましたが、16、17行目をかえるという課題です。
単語として処理するというのがよくわかりません、、、

Re:ポインタ

Posted: 2008年12月08日(月) 23:45
by lbfuvab
>書き忘れていましたが、16、17行目をかえるという課題です。

何の事か良く分かりませんが、
スペースで区切るのはstrtokでググれば良いと思いますよ。

# 一応、strstrもありですが・・・・

Re:ポインタ

Posted: 2008年12月09日(火) 00:04
by macka
自己解決しました ありがとうございました