Computer 314

Data

└ᘐ DATA 표기요령 1) 정수 int a = 10; -> (변수 a 에는 10) int a = 010; -> (변수 a 에는 8) └ 앞에 0로 붙으면 8진수로 인식. int a = 0x10; -> (변수 a 에는 16) └ 0x는 16진수로 인식. 2) 실수 double a = 3.14; double a = 0.123E + 02; └ 0.123 x 10² 의 의미 -> 12.3이다. 3) 논리 true false 4) 문자 char s = 'A'; ["A" 는 안된다!] char s = 97; 문자열 처리를 위해 java가 준비한 class. [형식] String str = " 문자열 "; ex) char a = " A "; (x) string a = " A "; (o) char a = 'A'; (..

Computer/JAVA 2012.08.10

Class와 main

└ᘐ 자바프로그램의 기본 - 자바 프로그램은 package/import 명령을 제외한 모든 내용은 반드 시 class 안에 포함되어야 한다. └ᘐ 클래스 만드는 방법 ----------------------------------------------- [접근지정자] class 클래스이름 [extends ???] [implenents ???] { } ----------------------------------------------- [public] class Test { } ----------------------------------------------- └ᘐ 접근 지정자의 종류 1) 생략 - 반드시 같은 디렉토리에 있는 클래스끼리만 사용할 수 있 도록 하기 위해서 package 방식이라고 말한다. ..

Computer/JAVA 2012.08.10

자동 개행

word-wrap: break-word; /* Internet Explorer 5.5+ */ white-space: pre-wrap; /* css-3 */ white-space: -moz-pre-wrap; /* Mozilla, since 1999 */ white-space: -pre-wrap; /* Opera 4-6 */ white-space: -o-pre-wrap; /* Opera 7 */ word-break:break-all; FF억지춘향 줄바꿈 / Dev html에서 한 문장의 줄이 길어지면 보통은 자동으로 줄바꿈해주지 않는다. IE(5.5부터인가?)의 경우는 css에 "word-wrap:break-word;"를 써주면 조금 어색한 곳이라도 무조건 줄바꿈시켜준다. 문제는 Firefox!! 여차저차 ..

Computer/CSS 2012.08.10

CSS Hack

브라우저의 버그를 hack으로 해결할 수 있는 부분이 많이 있습니다만 그보다 사이트의 CSS구 조를 설계할때 각 브라우저의 속성을 파악해고 조금만 더 주의해서 설계를 하시면 hack을 사용하지 않고도 해결할 수 있는 부분이 많이 있습니다. hack을 사용할때는 조금 더 신중하게 사용하시는게 좋습니다. 특히 예전 버전의 브라우저에 적용되었던 hack이 새로운 브라우저에 영향을 끼칠 가능성이 있으며 CSS를 변경 할 때 업무효율을 저하시키는 한 요인이 될 것 입니다. Intenet Explorer계열의 브라우저에서 제대로 표시가 되지 않는 경우에는 일단 width값이나 float관련 설정을 변경해 보시는 것도 하나의 방법인 것 같습니다. 혹시 Intenet Explorer에서 float와 margin을 같은..

Computer/CSS 2012.08.10

소켓 프로그래밍

1 시작 ¶ 소켓 프로그램이 어렵나요? 그냥 맨페이지만 보고서는 알아내기가 좀 어럽나요? 뭔가 있어보이는 인터넷 프로그램을 만들고 싶지만 bind()를 호출하고 connect()를 호출하고 이런 저런 구조체를 뒤지고 할 시간이 없나요? 글쎄요, 제가 그 지겨운걸 다 해놓았고요, 여러분과 이 정보를 공유하고 싶군요. 바로 찾아오셨습니다. 이 문서가 바로 평균적인 C 프로그래머에게 네트워크 프로그램에 관련된 정보를 드릴겁니다. [edit] 1.1 대상 ¶ 이 문서는 안내서이지 레퍼런스는 아닙니다. 아마도 소켓 프로그래밍을 처음 시작하면서 어디서부터 해야 할지 모르는 사람들에게 도움이 될겁니다. 물론 어떤 의미에서도 이 글은 소켓 프로그래밍에 관한 완벽한 안내서는 아닐 겁니다. 단지 도저히 의미를 알 수 없던..

Computer/C 2012.08.10

소켓 플래쉬 xml

웹상에서 채팅 프로그램을 구현할 때 가장 힘든 부분이 바로 HTTP 프로토콜이 접속이 바로 끊기고 상태를 저장하지 않는 접속을 이용한다는 점입니다. 즉, 소켓 프로그래밍에서 접속을 열고 닫고 하는것이 굉장히 운영체제 차원에서는 비싼 작업인 반면 이미 열려진 소켓에서 몇바이트 쯤 더 쓰는 것은 속도나 성능 면에서 전혀 문제가 되지 않는다는 것이죠 (요즘은 인터넷이 빨라서 초당 몇MB씩도 쓰고 하잖아요. 하지만 접속을 여는 데에는 여전히 시간이 걸리죠.) 그러나 Flash Action Script에서 지원하는 Socket 클래스를 이용하면 자신이 다운로드된 서버와 접속이 유지된 통신을할 수 있습니다. 본 프로그램에서는 이점을 이용하여 클라이언트로는 Flash와 자바스크립트를 이용하고 서버로는 C++로 자체 ..

Computer/C 2012.08.10

디스어셈블을 통한 함수 호출 이해

C 언어는 전통적으로 다음과 같은 방식으로 실행파일이 만들어진다. (1) 편집기를 통한 소스 작성 (2) 전처리기를 통해 소스로부터 매크로 확장 및 주석 제거 (3) 컴파일러를 통해 전처리된 코드로부터 어셈블코드 생성 (4) 어셈블러를 통해 어셈블코드로부터 목적파일 생성 (5) 링커를 통해 목적파일들 (라이브러리 포함)의 결합에 의한 실행파일 생성 이 중에서 (3) 번과정을 재미로 살펴보면서 어떤일들이 일어나는지 알아보고자 한다. 테스트한 환경은 다음과 같다. * x86 CPU * gcc 3.3.2 테스트 코드는 다음과 같다. void func1() { } void func2( int x ) { x = 0; } int func3() { return 7; } void func4() { int y; y = ..

Computer/C 2012.08.10

fastcall

호출규약으로 번역되는 calling convention이라는 주제가 있다. UNIX 쪽 C를 하는 사람들에게는 그다지 많이 다가오지 않는 주제일지 모르나, Windows 에서 프로그래밍을 하다보면, WINAPI라는 매크로를 사용할 때와 사용하지 않을 때가 있는 것을 볼 수 있는데, 저것은 실상 __stdcall 이라는 방식으로 선언하라는 것을 의미한다. 여기에는 중요한 두가지 요소가 있는데, 1. 인자 전달방식 2. 스택 청소 담당자 이다. 이런 차이에 의해 주위에서 많이 볼 수 있는 것이 다음 세가지이다. 1. cdecl 2. stdcall 3. fastcall 추가적으로 C++가 도입되면서 thiscall이라는 방식이 생겼지만, 이는 기본적으로 cdecl을 근간으로 하고 있으므로 생략하겠다. 또한 고..

Computer/C 2012.08.10

zip,unzip 컴포넌트

asp_zip_unzip.zip 백수다보니 할짓이 없어서 쓸데없는 글 하나 남깁니다. 데브피아 질문&답변 게시판 보면 가끔, 아주 가끔씩 올라오는 질문중 하나가 asp로 서버에 압축을 하거나, 압축풀기를 어떻게 하냐는겁니다. 몇년동안 개발하면서 그러한 작업은 필요한적이 없어서 별로 생각해본 기회가없었는데 오늘 문득 그런 질문글을보니 간편하게 컴퍼넌트로 만들면 어떨까 하는 생각이 들어서 대강 대강 어디서 소스구해서 테스트해보고 나름대로 이 정도면 간단한 예제용으로 괜찮다싶어서 글 올립니다. 원랜 가장 간단한 예제형식으로 압축/압축해제만 가능한 컴퍼넌트를 직접 만들어볼까했는데 내공이 존내 부족하다보니 지레겁부터먹고 그냥 코드구루에 아주 잘 만들어진 컴퍼넌트만 이용했습니다.-_- 돌아다니다보니 이것 저것 압축..

Computer/ASP 2012.08.10