[C++] 괘선은 어떻게 그리나요?

나는오리의 이미지

(DOS)
Command 창에서 괘선으로 사각형을 그리려 합니다.
혹...방법 아시는분 계신가요?

(추가)
설명이 부족한것 같아서 추가합니다.
옛날 도스프로그램들보면 굵은 실선이나 이중 실설같은걸로
네모난 테두리를 그립니다.
이런걸 그리고 싶은데 아시는분 계신가요?

purewell의 이미지

일일이 그려야할 것 같습니다.

_____________________________
언제나 맑고픈 샘이가...
http://purewell.biz

나는오리의 이미지

purewell wrote:
일일이 그려야할 것 같습니다.
그러니깐 그 일일이 그리는걸 어떻게 하지요?

printf("%c", 3); ???

이렇게 해도 이중괘선은 안보이던데 ㅠ.ㅠ

istree의 이미지

http://winapi.co.kr/cpp/reference/rectangle.gif

그런 도스 프로그램들은 Borland C++ 3.1로 만들지 않았을까요..

너의(yours) 프로그램 : 똑똑한체하는 트릭과 부적절한 주석이 넘치는 혼란 그자체.

나의(my) 프로그램 : 간결하며 효율적인 측면과 다음 개발자들을 위해서 완벽하게 주석을 단 최고로 균형잡힌 정교한 코드의 결정체

- Stan Kelly-Bootle

kslee80의 이미지

아마도 ASCII 코드표의 뒤쪽(0x80 이후코드) 코드를 이용한 선 그리기를 이야기 하시는듯...
정확하게 기억은 안 나지만, ASCII 코드표에 보면 박스 그리기에 이용할만한 문자들이 좀 있습니다.
OP 께서 말씀하신 이중 선도 있었던거 같고....
ASCII 코드표(0xFF 까지 있는 코드표) 를 찾아보시면 도움이 될듯 싶네요.

P.S.) 해당 값들은 보통 0x80 이후에 있는데...이 값들의 경우, 한글 코드와 겹치는 경우가 많아서
한글 표시를 지원하는 터미널에서는 깨져서 나올 겁니다...

추가) 그리고 예전 도스 프로그램들은 Turbo C 나 Borland C++ 에서 제공하던
conio.h 를 사용했기 때문에 박스 그리기가 편한 편이였습니다..
Linux 콘솔 같은데서 박스를 그릴려면 ncurses 를 이용하는게 편할 겁니다;;

_의 이미지

상황을 보니 도스창인것 같은데,
한글모드라면 아시다시피 그냥 ㅂ+한자키로....┨┸┡ 입력후 붙여넣기...인데 이걸 물어보시는건 아닐테고
영문모드니까,
ASCII코드표를 보고 하시면 됩니다.

물론 윗분 말씀대로 한글 모드로 설정해놓았다면 깨져(정확히 말하자면 저 아스키 문자들이 한글로 번역되어)나옵니다.
예를들어 가로 선문자 2byte가 완성형 한글에선 '컴'자가 되기 때문에...
도스시절에 이런 광경 수없이 보신 분들 많을 겁니다.
旼컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴커

나는오리의 이미지

ㅡ.ㅡ;
0x80 뒤에 숨어있었군요.
전 그래서 ASCII가 아닌줄 알았습니다.

한글로 변환된 문자를 다시 선문자로 바꿀수는 없을까요?

익명 사용자의 이미지

tomoyo wrote:

...
물론 윗분 말씀대로 한글 모드로 설정해놓았다면 깨져(정확히 말하자면 저 아스키 문자들이 한글로 번역되어)나옵니다.
예를들어 가로 선문자 2byte가 완성형 한글에선 '컴'자가 되기 때문에...
도스시절에 이런 광경 수없이 보신 분들 많을 겁니다.
旼컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴커

cmd창에서
c:\> chcp 437
로 영문모드로 변경 후 작업하시면, ......

* 세계정복에 필요하신 것 같아서.. :twisted:

나는오리의 이미지

Anonymous wrote:
tomoyo wrote:

...
물론 윗분 말씀대로 한글 모드로 설정해놓았다면 깨져(정확히 말하자면 저 아스키 문자들이 한글로 번역되어)나옵니다.
예를들어 가로 선문자 2byte가 완성형 한글에선 '컴'자가 되기 때문에...
도스시절에 이런 광경 수없이 보신 분들 많을 겁니다.
旼컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴컴커

cmd창에서
c:\> chcp 437
로 영문모드로 변경 후 작업하시면, ......

* 세계정복에 필요하신 것 같아서.. :twisted:

ㅡ.,ㅡ;;;
Prentice의 이미지

윈9x라면 hcode /e도 있습니다.

개인적으로는 ncurses에 선그리기 기능이 있다면 그걸 활용해보시거나 아니면 dialog등의 프로그램을 참고하시라고 말씀드리고 싶네요.

나는오리의 이미지

검은해 wrote:
윈9x라면 hcode /e도 있습니다.

개인적으로는 ncurses에 선그리기 기능이 있다면 그걸 활용해보시거나 아니면 dialog등의 프로그램을 참고하시라고 말씀드리고 싶네요.

음...제가 하려는건요.
PC1 - PC2 - PRINTER
이렇게 구성되어있습니다.
PC1에서 PC2로 데이터를 보내주면 PC2에서 PRINTER로 보내주려 합니다.

처음엔 한 라인씩 .txt파일에 저장해서 print xxx.txt 명령으로 프린트 했었는데 이러니깐 깨지더라고요. -_-;
그래서 다른 방법을 찾고 있는 중입니다.

그래서 chcp 949 또는 hcode /e 옵션을 줄 수가 없습니다.

현재는 fprintf로 방법을 바꿨는데 아직 테스트를 못해봐서 모르겠네요. ㅡ.,ㅡ;
잘되어야 할텐데...

Prentice의 이미지

프린터에서 KS, KSSM조합형, KSSM완성형, 8bit ASCII 등등 모드를 지정하실 수 있다면 그렇게 하시고, 각 모드에 확실히 맞는 코드를 넣어서 파일을 저장하세요.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.