골
선택한 프로그래밍 언어를 사용하여 C 프로그램을 나타내는 문자열에서 주석을 제거 하는 가장 짧은 프로그램 을 작성하십시오 .
입력
문자열은 모든 형태의 입력으로 사용할 수 있지만 변수로도 사용할 수 있습니다.
명령
두 가지 다른 종류의 주석이 제거됩니다.
- 여러 줄 주석 으로 시작
/*
하고 끝나는*/
//
Linux 스타일 줄 바꿈 (LF,\n
)으로 시작 하고 끝나는 한 줄 주석
문자열 내의 주석은 삭제되지 않습니다. 이 과제의 목적을 위해-로 "
구분 된 문자열 만 고려 하면됩니다. 특히, '
구분 문자 리터럴 의 가능성을 무시할 수 있습니다 . 3 점과 줄 연속 ( /\<LF>*...
)을 무시해도 됩니다.
예
입력:
#include <stdio.h>
int main(int argc, char** argv)
{
// this comment will be removed
if (argc > 1) {
printf("Too many arguments.\n"); // this too will be removed
return 1;
}
printf("Please vist http://this.will.not.be.removed.com\n");
printf("/* This will stay */\n");
printf("\"/* This will stay too */\"\n");
printf("//and so will this\\");
// but not this
printf("just \"ano//ther\" test.");
return 0;
}
산출:
#include <stdio.h>
int main(int argc, char** argv)
{
if (argc > 1) {
printf("Too many arguments.\n");
return 1;
}
printf("Please vist http://this.will.not.be.removed.com\n");
printf("/* This will stay */\n");
printf("\"/* This will stay too */\"\n");
printf("//and so will this\\");
printf("just \"ano//ther\" test.");
return 0;
}
입력:
/*
this shall disappear
*/
#include <string>
int main(int argc, char** argv)
{
string foo = ""/*remove that!**/;
// Remove /* this
int butNotThis = 42;
// But do */ remove this
int bar = 4 /*remove this*/* 3; // but don't remove that 3. */
return 0;//just a comment
}/*end of the file has been reached.*/
산출:
#include <string>
int main(int argc, char** argv)
{
string foo = "";
int butNotThis = 42;
int bar = 4 * 3;
return 0;
}
// this comment will be removed
방금 사라진 4 개의 공간이 있습니다 . 그것에 대한 규칙?
printf("\"/* This will stay too */\"\n");
에서 코드 가 나타나야 합니까?