关于字符型指针数组的赋值问题 求教
- C/C++ code
#include<stdio.h>int main(){ static char * str[500002]; int N,i; scanf("%d",&N); for(i=0;i<N;i++) scanf("%s",str[i]); for(i=0;i<N;i++) printf("%s\n",str[i]); return 0;}
scanf("%s",str[i]); 这句好像有问题,运行时在这出现错误,请问这是什么问题? 谢谢各位!
[解决办法]
- C/C++ code
int main(){ static char * str[500002]; int N,i; scanf("%d",&N); for(i=0;i<N;i++) { str[i] = (char*)malloc(128*sizeof(char)); scanf("%s",str[i]); } for(i=0;i<N;i++) printf("%s\n",str[i]); for(i=0;i<N;i++) free(str[i]); return 0;}