Linux와 Windows 화면제어 코드 변환 문제

kjw7945의 이미지

여태까지 많은 자료를 찾아보았습니다만...
해결 방법이 없는 듯 하네요. ㅠㅠ

여태껏 학교 숙제 수준에서는 윈도우든 리눅스이든
똑같이 컴파일 하면 잘 돌아갔는데(겨우..printf만 잔뜩
찍어대니깐요 ^^; ㅎ)
드디어 플랫폼 간에 문제가 생겼네요..

본론으로..문제는 이겁니다..

Linux에서는 ansi code와 ncurse, termios를 이용해 터미널을
제어 할 수 있습니다만(가령 clear, gotoxy를 해결 할 수 있습니다)
윈도우에서는 다른 방법으로 직접 함수를 만들어서
(windows.h라든지..) 해결 할 수 있는 걸로 파악했습니다...
윈도우즈는 ansicode 도 안먹는다더군요..(배가 부른듯..이런..M$ ...)

따라서 코드의 변환없이 화면을 제어하는 코드를 만들었으면
합니다..(문제를 국한시켜서 gotoxy만이라도..해결을 봤으면
합니다.. linux에서 ansicode로 했다면 윈도우에서는
windows.h를 이용해서 합니다만... ansicode를 이용할 수
없을까 하는게 생각입니다만...)

코드가 조금 달라도 똑같은 방법으로라도 좋겠습니다만...
역시나 방법은 없는 듯하네요..여러분은 어떻게 해결하시는지요?
해결방법이 있을까요? ^^

zeranium의 이미지

이렇케 하시면 윈도우에서도 gotoxy쓸수있던데요;

#include "windows.h"

#include "stdio.h"

 

void gotoxy(int x, int y)

{

   COORD pos={x,y};

   SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);

}

 

void main()

{

    gotoxy(10, 10);

    printf("abc");

}

씨를 처음 배우는 초보인데요 리눅스상에서는 어떻케 gotoxy를 구연을 할수있는지요?; 윈도우에서만 하다가 할려니까 어렵네요.
익명 사용자의 이미지

kjw7945 wrote:
윈도우즈는 ansicode 도 안먹는다더군요..(배가 부른듯..이런..M$ ...)

아무리 리눅스 동호인들의 게시판이라지만...
무턱대고 microsoft 욕을 해대는 것을 보면 참 딱하다는 생각이 듭니다.
윈도 커맨드 프롬프트에서 ansicode가 안먹는 것이 어찌하여 microsoft 가 배가 부른 것으로 연결시킬 수 있는지에 대해 저의 상식으로는 도저히 이해가 되지 않네요.
학생이신듯한데, 자기가 바라보는 세상만 옳다는 편협한 생각을 버리셨으면 좋겠습니다. 기분이 나쁘셨나요? :(

tinywolf의 이미지

예전 도스시절엔 안시코드 사용할 수 있었는데..
prompt를 화려하게 만드는데 주로 쓰였습니다..
지금은 확인해 보지 않았습니다만..

ㅡ_ㅡ;

kernuts의 이미지

Anonymous wrote:

윈도 커맨드 프롬프트에서 ansicode가 안먹는 것이 어찌하여 microsoft 가 배가 부른 것으로 연결시킬 수 있는지에 대해 저의 상식으로는 도저히 이해가 되지 않네요.

배불러서 안먹는거 아니겠습니까??

The knowledge belongs to the World like Shakespear's and Asprin.

monpetit의 이미지

cmd.exe는 지원하지 않지만 command.com은 아직 ansi code를 지원합니다.
불편하더라도 ansi code가 꼭 필요할 경우엔 이걸 쓸 수도 있죠.

kjw7945의 이미지

부끄럽군요..

ydhoney의 이미지

자..그것이 알고싶다 의 문성근씨 톤으로 진행을 하도록 하겠습니다.

문성근 톤 wrote:
음..첫 글을 써주신 분의 글을 아주 일부만 아주 극단적으로 인용해보겠습니다.

Quote:
윈도우즈ansicode 도 안먹는다더군요..(배가 부른듯..이런..M$ ...)

이 글에서 보면 "윈도우즈" 는 "ansicode도 안먹는다" 라고 적고 계십니다.

이 말인 즉슨 "윈도우즈" 라는 음식은 "ansicode" 도 먹지 않는 음식이다..라는 것인데..

윈도우는 배불러지는 대상이 아니라 음식이라고 볼 수 있지요. 그리고 실제 배가 부른건 ansicode라는 대상이 배가 부른것이겠지요.

근데 또 글 쓰신 분은 다음 괄호에서 이렇게 밝히고 계십니다.

(배가 부른듯..이런..M$..)

자..그럼 이것은 무엇을 뜻하느냐..이 괄호내의 한마디로 인하여 글의 주제가 완전히 뒤바뀌었습니다!!

윈도우즈라는 음식을 판매하고 있는 M$라는 식당이 있는것으로 보이는데..

과연 이 식당에서 나온 윈도우즈라는 음식을 먹지 않는 ansicode씨가 배가 부른것일까요?

아니면..ansicode씨는 생각외로 입맛이 까다롭지 않은 반면에..이 M$라는 식당이 배때지가 불러서 ansicode씨가 먹기 곤란한 윈도우즈라는 음식을 내놓고 있는것일까요?

우리 제작진은..이 점에 착안하여 좀 더 이 문맥을 살펴보았습니다.

저 전체적인 문구를 저 두가지 시각에서 다시 분석해 보도록 하겠습니다.

이 문맥에서 ansicode씨는 비난의 대상이 되지 않고 있습니다. 단지 그냥 남들도 안먹는데 ansicode씨도 안먹는다 하여 "ansicode도" 라는 표현을 사용하고 있습니다. 단지 ansicode씨는 먹지 않고 있을 뿐 실제 배가 부른 비난의 대상은 아닌것으로 보입니다.

반면 괄호 내의 내용을 보면 "이런 M$" 라면서 M$에게 이런..이라는 표현을 사용하는것을 볼 수 있습니다. 여기에서 생략된 어구를 살펴볼적에 "이런 (나쁜) M$" 라는 의미라는것을 수능시험의 경험을 바탕으로 판단할 수 있을것입니다.

이를 미루어 짐작컨데, 이 문구에서 정확하게 배가 부른 대상은 "M$" 인것으로 판명났습니다.


슥슥~

=3=33

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.