出现问题的code如下
if(argc==3){
if( strcmp(argv[1], "-g") == 0 ){
struct group *data;
char gp[50];
int i=0;
strcpy(gp, argv[2] );
data = getgrnam("gp");
If(data != NULL){
while(data -> gr_mem[i]){
printf("%s\n",data->gr_mem[i++]);
}
}
}
}
compiler没有问题.但想要执行这段的时候显示
Segmentation fault (core dumped)
我试过把strcpy这行改成strncpy(gp, argv[2],10 );
但还是一样
想请问是哪里出了错误?