新手,对所编的c程序有疑问,请教高手解答
时间:10-02
整理:3721RD
点击:
/*输出数组某部分的内容 */
#include<stdio.h> // 头文件
#include<reg52.h> // 头文件
void main(void) // 主函数
{
int i,j;
char a[9]={'a','b','c','d','e','f','g','h'};
char *p ;
SCON = 0x50;
TMOD |= 0x20;
TH1 = 0xf3;
TR1 = 1;
TI = 1;
printf("input number: ");
scanf("%d",j);
p = a + j;
while(*p)
{
printf("%c ",*p++);
}
while(1);
}
为什么程序这样写行不通?
#include<stdio.h> // 头文件
#include<reg52.h> // 头文件
void main(void) // 主函数
{
int i,j;
char a[9]={'a','b','c','d','e','f','g','h'};
char *p ;
SCON = 0x50;
TMOD |= 0x20;
TH1 = 0xf3;
TR1 = 1;
TI = 1;
printf("input number: ");
scanf("%d",j);
p = a + j;
while(*p)
{
printf("%c ",*p++);
}
while(1);
}
为什么程序这样写行不通?

printf()等标准函数不适用于单片机
必须根据实际电路编写程序
我想你是搞错了!我才开始学习单片机编程。我想做的是稳扎稳打。我也知道编写程序需要根据实际电路来做。但我现在是在练基础。这也是为什么我从51开始学习的原因。不能上来就开始做什么小跑车之类,因为我的主要方向上是编程,所以碰到任何情况都需要询问。如果你不能具体回答我的问题,麻烦你不要回复。我不需要灌水帖。
