프로그래밍 QnA + 설치 및 활용 QnA + 질문

mydream의 이미지

PtInRect와 같은 함수가 없을까요?

Visual Studio 2008 C++로 FillRect로 만든 사각형을 움직여서 먹이를 먹는 프로그램을 만들고 있습니다. 먹이는 점의 좌표이고 SetPixel로 점을 찍었고요. 그리고 사각형(이하 '팩맨'이라 하겠습니다.)이 먹이를 집어삼키면 먹이가 없어지도록 했고요. 이를 감지하기 위해

if(PtlnRect(팩맨, 먹이)) {
//먹이를 먹었을 때의 처리를 해준다.
}

라고 해서 팩맨이 먹이를 삼켰다는 것을 인식하도록 했고요.
그런데 먹이를 점이 아닌 다각형 Polygon으로 표현하고 싶은데, 이럴 경우에는 팩맨이 먹이를 삼켰다는 것을 어떻게 인식하게 할 수 있을까요?

if(anyfunc(팩맨, 다각형먹이)) {
//먹이를 먹었을 때의 처리를 해준다.
}

이 때 anyfunc 함수로 API에서 제공하는 함수가 무엇인지 알려주시면 감사하겠습니다.

muz0880의 이미지

멀티스레드의 문제라는 게 멀티 프로세스 환경에서는 일어나지 않나요?


멀티 스레드의 문제점 중에 스레드들이 한 공유자원을 사용할 때 동기화를 해 주지 않으면
작업 중 컨텍스트 스위칭이 일어나서 데이터를 저장하고 불러오는 과정 사이에서
작업 반영이 안되거나 예기치 않은 값이 들어가는 현상(무어라 하는 지 잘 모르겠습니다..)이
일어나는 데..

스레드가 아닌 멀티 프로세스의 경우 같은 상황에서 A가 자원을 읽고 쓰기 전에
B가 자원을 읽고 쓰거나하여 결과적으로 A,B의 작업 결과가 모두 반영되지 않거나
이상해지는 경우가 동일하게 일어날 수 있는 게 아닌가요?

아니면 혹시 스레드의 문제라는 건 메모리공간을 공유하면서 컨텍스트 스위칭 시
이전 내용을 같은 곳에 저장하기 때문에 생기는 일인가요?

.. 머리 속에서 자꾸 헷갈리고 모르는 상태로 답이 안나와서 여쭙니다..

yhkim의 이미지

두개의 네트워크카드를 이용한 소켓 프로그래밍

Linux-64bit 4.2.0-27-generic #32-Ubuntu SMP Fri Jan 22 04:49:08 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

가상머신에서 리눅스설치하여 소켓 프로그래밍 중에 있습니다.

두개의 네트워크카드를 이용해서 2개의 세션을 하나의 서버에 연결하려고 해서 UDP 또는 TCP 통신을 하여 데이터를 주고 받으려고 합니다.

구글링 결과 setsockopt에 SO_BINDTODEVICE 이용하면 사용하고자 하는 인터페이스카드를 쓸수 있다고해서

사용해 보았지만 와이어샼을 이용해서 패킷을 캡쳐해본 결과 서로 다른 인터페이스를 통해 패킷은 주고 받았지만 어플 레벨에서는 실제 패킷을 받지 못했습니다..

도움을 요청합니다..

lchy0113의 이미지

spi to uart & uart to spi converter 질문입니다.

안녕하세요.
spi device 를 uart device를 통해서 data를 read/write 를 할수 있는 방법에 대해 검색을 하다 질문을 남기게되었습니다.
IC로 되어진 제품은 bridges가 http://www.nxp.com/documents/leaflet/75015676.pdf 링크와 같이 있다만, 소프트웨어 적으로 구현하려 합니다.
소프트웨어적으로 구현된 정보를 답변해 주시면은 감사드리겠습니다.

telepathy070의 이미지

c++과 php 소스 공유

c++ 로 만든 클래스나 structure 구조를 php에도 적용할수 있게 소스 제너레이터 같은 툴이 있나요?

예를들어

jic5760의 이미지

하나의 객채를 여러 개채가 공유해야 할때 어떻게 하나요???

class Parent {
 protected int m_a;
}
 
class Child1 : Parent {
 private int m_b;
 
 void func(){
  this.m_b = base.m_a; // m_a 접근가능
 }
}
 
class Child2 : Parent {
 private int m_c;
 
 void func(){
  this.m_c = base.m_a; // m_a 접근가능
 }
}

간단하게 이런 코드가 있을 때 Child1, Chile2에서 같은 Parent 객체를 공유하고 싶습니다.

kjh2663의 이미지

커널에서 software raid 지원을 안하는 것 처럼 보이는데 추가 확인방법이나 조치방법이 있을까요?

필요한 정보 검색하면서 kdlp포럼 많이 참고해서 도움받았는데, 처음으로 가입해서 첫 질문글을 올려보네요.

운영장비 HDD 배드섹터로 장애가 난뒤로 software raid 구축방법을 알아보고 있습니다.
많은 블로그들 및 사이트에 설명은 자세히 나와있어, 1차적으로 가상머신으로 테스트해보았죠.
mdadm을 이용하여 이상없이 raid 구성이 된듯 하여, 실제장비와 같은 예비장비에 테스트를 해보려고 보니...

2.4때부터 도입되서, 보통 2.6버전 커널이상이면 지원된다고 나와있는 글을 몇몇개 봤는데..
실제장비는 2.6.15버전 커널(fedora 5.5)인데 해당 모듈이나 필요한 구성요소가 안보이는것 같군요.
mdadm 없음, /lib/module/2.6.15~/kernel/drivers/에 md 없음, /proc/mdstat 없음, /proc/device Block device 주번호 장치없음 등..
처음에는 mdadm 패키지가 안깔려있어 그런가 했는데, 패키지를 깔아보아도 마찬가지네요.

seojh1431의 이미지

OS가 윈도우를 사용하고 있습니다. 파일 문서 형식에 대해서 궁금합니다.

확장자가 txt, xls, xlsx, ppt, rtf(워드패드), show, cell은 사람이 볼 수 있는 아스키코드 형식으로 되어 있는 것으로 알고 있습니다.

그럼 아스키코드로 되어 있다고 어디서 확인할 수 있나요?

그리고 그림파일 jpg, bmp 같은것은 어떤 문서로 이루어져 있는지 궁금합니다.

Pi11ar의 이미지

Sequence Point

ISO 레퍼런스를 읽어 봤는데 이해가 안가네요..

예를 들어

a*=b*=a*=b;

같은 경우는 표준코드인가요..?

khalisto의 이미지

MySQL ERROR 1118 (42000) 발생시

안녕하세요.

저희 고객분의 요청으로 인해 mysql 4.0 -> mysql 5.5 로의 업그레이드 작업을 위해

운영중인 모든 DB를 db명.sql 로 덤프받아 mysql .5.5 서버에 sql 파일로 하여금 테이블생성 작업을 하고

있는과정에 일부 DB에서 아래와 같은 메시지가 발생합니다. (원본은 모두 MyISAM 방식입니다.)

ERROR 1118 (42000) at line 3727: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. You have to change some columns to TEXT or BLOBs

약 2시간가량 구글검색을 해보았는데 아래와 같은 결과를 찾았지만

페이지

프로그래밍 QnA + 설치 및 활용 QnA + 질문 구독하기