编译器提示非法间接寻址.原因何在?
第一分代码如下可以通过编译,#include"stdio.h"
main(){
char *p;
char *y="uo";
p=y;
printf("%s",p);
}
第二份代码如下无法通过编译,编译器提示非法间接寻址.原因何在?等号两边都得是指针吗?
#include"stdio.h"
main(){
char *p;
char *y="uo";
p=&*y[0];
printf("%s",p);
}
#include<stdio.h> int main() { char* y="uo"; char* p=&y[0]; printf("%s\n",p); return 0; }