C言語のポインターで詰まっている。
下記でコンパイルエラーになる。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
char *buf="<title>sample</title>";
char work[256];
char *p;
char *out=work;
char *in=buf;
in=strstr(in,"<");
while(strcmp((*p=(*out++ = *in++)),"sample") != 0);
printf("%c",p);
//while(strcmp((*out++=*in++),">") != 0);
*out='\0';
printf("%s\n",out);
return 0;
}
下記のエラーが出る。
01.c: In function 'main':
01.c:14:2: warning: passing argument 1 of 'strcmp' makes pointer from integer without a cast [enabled by default]
while(strcmp((*p=(*out++ = *in++)),"sample") != 0);
^
In file included from 01.c:3:0:
c:\mingw\include\string.h:43:37: note: expected 'const char *' but argument is of type 'char'
_CRTIMP int __cdecl __MINGW_NOTHROW strcmp (const char*, const char*) __MINGW_ATTRIB_PURE;
^
済みません。間違いを指摘願います。
尚、出来ればコードでの回答をお願いします。
その方が理解が早いので。協力をお願いします。