이 섹션에서는 어떤 유형의 연산자도 프로그램에 사용하지 않고 두 숫자의 합을 출력하는 방법을 볼 것입니다.
이 문제는 까다롭습니다. 이 문제를 해결하기 위해 우리는 printf() 문의 최소 너비 필드를 사용하고 있습니다. 예를 들어 printf()를 사용하여 "Hello" 앞에 x개의 공백을 넣고 싶다면 이것을 작성할 수 있습니다. 여기서 printf()는 너비와 인쇄될 문자를 취합니다. 이 경우 공백을 씁니다.
예시 코드
#include<stdio.h> main() { int x = 10; printf("%*cHello", x, ' '); }
출력
Hello
이제 이 기능이 코드에서 합계 결과를 얻는 데 어떻게 도움이 되는지 살펴보겠습니다. x + y의 결과를 얻기 위해 x와 y를 입력으로 사용합니다. 따라서 이 절차를 사용하여 x개의 공백 뒤에 y개의 공백을 만듭니다. 그런 다음 우리는 결과로 printf()의 반환된 값을 취합니다. 우리는 printf()가 해당 문자열의 길이를 반환한다는 것을 알고 있습니다.
예시 코드
#include<stdio.h> int add(int x, int y) { int len; len = printf("%*c%*c", x, ' ', y, ' '); return len; } main() { int x = 10, y = 20; int res = add(x, y); printf("\nThe result is: %d", res); }
출력
The result is: 30