主题:请高手帮个忙,看看我这纠结我半天的几个简单的问题
[color=008000]//改错题[/color]#include<stdio.h>
// 1.这个运行不出结果
#include<stdio.h>
#include<string.h>
main()
{
int i;
char string[10],str1[10];
for(i=0;i<10;i++)
str1[i]='A';
strcpy(string, str1);
printf("%s\n%c\n",string,str1[3]);
}
// 2.这个运行正常,但是资料上说这样会数据越界,求解释?
#include<stdio.h>
main()
{
char string[10];
char* str1="0123456789";
strcpy(string, str1);
printf("%s\n",string);
}
// 3.这个好像没什么问题,请问大侠们,错误在哪里?
#include<stdio.h>
#include<string.h>
main()
{
char string[10], str1[100];
gets(str1);
if(strlen(str1)<=10)
{
strcpy(string, str1);
}
printf("%s\n",string);
}
// 1.这个运行不出结果
#include<stdio.h>
#include<string.h>
main()
{
int i;
char string[10],str1[10];
for(i=0;i<10;i++)
str1[i]='A';
strcpy(string, str1);
printf("%s\n%c\n",string,str1[3]);
}
// 2.这个运行正常,但是资料上说这样会数据越界,求解释?
#include<stdio.h>
main()
{
char string[10];
char* str1="0123456789";
strcpy(string, str1);
printf("%s\n",string);
}
// 3.这个好像没什么问题,请问大侠们,错误在哪里?
#include<stdio.h>
#include<string.h>
main()
{
char string[10], str1[100];
gets(str1);
if(strlen(str1)<=10)
{
strcpy(string, str1);
}
printf("%s\n",string);
}