내 자신의 printf 함수를 만들려고하는데 작동하지 않습니다. 출력이 올바른 형식 인 것 같지만 매개 변수가 제대로 전달되지 않고 쓰레기 값이 표시됩니다. 나는 GCC를 사용하고있다. 아래 코드를 참조하십시오.내 varidic 인수가 C에서 작동하지 않는 이유는 무엇입니까?
printf_buffer는이 버전에서 128 바이트 인 CON_TMPSIZE 바이트 길이로 정의됩니다. 이것은 소형 마이크로 컨트롤러 용이지만 모든 프로세서에이 원칙이 적용될 것으로 기대합니다.
나는 이런 식으로 호출 오전 :
con_printf("LOOP a %d\n", 0, 10);
con_printf("LOOP b %d\n", 0, 12);
나는 LOOP 10가 첫 번째 줄에 인쇄하고, LOOP 12 (B) 다음에 기대,하지만 난 루프 A (542) 및 루프 B (542)을 얻는다.
이 친절하게 우리에게 발신자를 표시하고, 인수에 전달되는 – EvilTeach
@EvilTeach - 추가 호출 코드에 대한 –