나는 C를 배우고 있습니다. 그래서이 거리 타이머 프로그램을 작성했습니다. gnu-gcc 컴파일러로 잘 실행됩니다. 그러나 avr에 대한 gnu-gcc는 컴파일되지만 실행하면 아무 버튼이나 누르면 사라지는 것을 제외하고는 아무것도 수행하지 않는 cmd 세션 만 진행됩니다. 이유를 알고 싶습니다. 버퍼 오버 플로우에 방법 :내 프로그램은 gnu-gcc에서 잘 실행되지만 gnu gcc에서는 avr이 아닙니다.
내가 여기에 코드 블록을 사용하고 나의 코드 당신은 아마 이유 gets
으로 실행하는
#include<stdio.h>
#include<stdlib.h>
#define speedpersecond 5
int main()
{
char time [5];
double distance;
printf("Please enter time in seconds");
gets(time);
distance = atoi(time) * speedpersecond;
printf("Distance is %g ", distance);
return 8585;
}
'gets'를 사용하지 마십시오. 그리고 왜 8585를 돌려 주나요? 돌아 가기보십시오 0 – stackptr
아무런 차이가 없으므로 숫자를 반환 할 것이라고 생각하지 마십시오. –
Mmh ... gcc-avr로 컴파일 한 프로그램을 어디에서 실행합니까? PC 또는 마이크로 컨트롤러에서? – deamentiaemundi