無題
Posted: 2007年1月30日(火) 14:06
お久しぶりです。
ダイクストラ法の時は大変お世話になりました.
今回は関数へのポインタです.
#include <stdio.h>
#include <string.h>
int main(void)
{
char *(*p_strcpy)(char *, char *);
char s1[10];
char s2[/url] = "copy";
p_strcpy = strcpy;
p_strcpy(s1, s2);
printf("%s\n", s1);
return 0;
}
test.c: In function `main':
test.c:10: warning: assignment from incompatible pointer type
と表示されこのプログラムは教科書通りに書いているのですが・・・・どう対処していいかワカリマセン・・
ご協力お願いします.
あと、自作関数を使って関数へのポインタは理解できたんですが
char *(*func) (void); と言ったchar型へのポインタを返す関数へのポインタといったポインタのポインタ(表現は不適切かも知れませんが)ではどういったことが行われているのでしょうか?(どういった働きをするのか)
ダイクストラ法の時は大変お世話になりました.
今回は関数へのポインタです.
#include <stdio.h>
#include <string.h>
int main(void)
{
char *(*p_strcpy)(char *, char *);
char s1[10];
char s2[/url] = "copy";
p_strcpy = strcpy;
p_strcpy(s1, s2);
printf("%s\n", s1);
return 0;
}
test.c: In function `main':
test.c:10: warning: assignment from incompatible pointer type
と表示されこのプログラムは教科書通りに書いているのですが・・・・どう対処していいかワカリマセン・・
ご協力お願いします.
あと、自作関数を使って関数へのポインタは理解できたんですが
char *(*func) (void); と言ったchar型へのポインタを返す関数へのポインタといったポインタのポインタ(表現は不適切かも知れませんが)ではどういったことが行われているのでしょうか?(どういった働きをするのか)