请教为什么给数组赋值会报错
请问为什么给数组赋值会报错?
请问为什么info[index][0]=str;这种赋值语句总是会报错呢?
请高手指教,非常感谢!!
------解决方案--------------------
字符串怎么能直接赋值。。用strcpy。。
请问为什么info[index][0]=str;这种赋值语句总是会报错呢?
请高手指教,非常感谢!!
#include <stdio.h>
#include <windows.h>
#include <stdlib.h>
int system(const char *string);
void start();
void chakan(char info[999][3][50],int size);
void zengjia(char info[999][3][50],int *size);
int main()
{ char input;
char info[999][3][50];
int size=0;
start();
while(1){
input =getchar();
switch(input){
case '#':
start();
break;
case '0':
exit(0);
break;
case '1':
start();
chakan(info,size);
break;
case '2':
start();
zengjia(info,&size);
}
}
return 0;
}
void chakan(char info[999][3][50],int size){
int i,j;
printf("-----------------------------驾考信息------------------------\n");
printf("\t姓名\t考号\t待考科目\n");
for(i=0;i<size;i++){
for(j=0;j<4;j++){
printf("%s\t%s\t%s\t%s",info[i][j]);
}
}
printf("----------------------------请按#返回------------------------\n");
}
void zengjia(char info[999][3][50],int *size){
char str[50]="";
int index=*size;
printf("-----------------------------增加信息------------------------\n");
while(1){
printf("请输入姓名:\n");
gets(str);
info[index][0]=str;
printf("请输入考号:\n");
gets(str);
info[index][1]=str;
printf("请输入待考科目:\n");
gets(str);
info[index][2]=str;
}
printf("----------------------------请按#返回------------------------\n");
}
void start(){
system("cls");
printf("-------------------------------驾考信息管理系统-----------------------\n");
printf("1.查看所有驾考信息\n");
printf("2.增加驾考信息\n");
printf("3.删除驾考信息\n");
printf("4.修改驾考信息\n");
printf("0.退出\n");
}
C
------解决方案--------------------
字符串怎么能直接赋值。。用strcpy。。
strcpy(info[index][0], str);