• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

.5s 와 .s 관련 질문입니다.

22.08.17 01:00 작성 조회수 113

0

printf(".5s\n", "ABCDEFGHIJKLMN"); // ABCED 출력printf(".s\n", "ABCDEFGHIJKLMN"); 

를 출력해봤는데

.5s

.s만 출력이 됩니다.

warning C4474: 'printf' : too many arguments passed for format string

message : placeholders and their parameters expect 0 variadic arguments, but 1 were provided

오류가 뜨는데, 어떻게 해결해야 하나요?

답변 1

답변을 작성해보세요.

0

강민철님의 프로필

강민철

2022.08.18

혹시 전체 소스코드를 첨부해주시겠어요?

저의 환경의 경우 Visual Studio 2017과 gcc 컴파일러를 사용해 돌려보았을 때

아래의 코드는 잘 동작합니다.

 

#include<stdio.h>

int main()
{
    printf("%.5s\n", "abcdefghijk");
    printf("%.s\n", "abcdefghijk");


    return 0;
}
bebeam6003님의 프로필

bebeam6003

질문자

2022.08.27

답변을 읽고 다시 보니까

%를 빼고 코딩했었습니다, 답변해주셔서 감사합니다.

printf(".5s\n", "abcdefghijk);