프로그래밍 QnA

iammero의 이미지

tcp 통신인데 패킷 크기가 1500을 넘는 것이 있습니다.

제가 알기로는,
tcp, ip 통신을 할 때 패킷 하나의 최대 크기가 1500바이트를 넘어가지 않는다고 알고 있는데요.
와이어샤크로 보다보니 1500바이트를 넘어가는 패킷을 보았습니다.
1887바이트였습니다.
왜 1500이 넘는데도 tcp 세그먼트로 쪼개지지가 않고 한번에 보내진 걸까요?

해당 패킷은 http 리퀘스트를 담고 있는 패킷이었습니다.
요청 리소스 이름이 매우 길어서 리퀘스트 헤더 만으로도 1500바이트 이상이 된 것이었죠.
혹시 http 리퀘스트는 무조건 쪼개지 않고서 보낸다거나 하는 규칙이라도 있는건가요?

알려주시면 감사하겠습니다.

hanty11의 이미지

c++STL vector<> 에 추가할때 클래스 소멸질문입니다.

실험(?)을 위해 Integer클래스를 만들었습니다.

class Integer {
	int n;
public :
	Integer(int _n = 0): n(_n){}
	~Integer() {
		cout << "del : " << n << endl;
	}
	operator int () const{
		return n;
	}
};

소멸할때마다 n을 외치고 죽습니다.

그리고 vector에 5까지 추가해서 출력해봤더니

sincs912의 이미지

public static void main(String[] args) 자바 코드 작성시 사용 이유를 알고 싶습니다.

public static void main(String[] args) {

//public는 접근 제한자로 어디서든지 참조 할수 있는 넓은 범위를 의미한다.
//static는 정적이라는 의미로 메모리에 제일 먼저 로딩되는 것이다.
//void 리턴값을 의미한다 void는 리턴값이 없다는 뜻이다.
//(String[] args) 이름이 args인 String형의 배열

이정도로 알고 있는데

더 정확히 알고 싶어서 그런데

왜 저 문구를 사용해야 하는지

사용하는 이유를

자세히 설명 해주시면 안될까요

v0o0o0v의 이미지

[우분투] gtk+2 질문 입니다.

현재 우분투 환경에서 GTK+2 로 GUI 를 만들어 작업중입니다.

GUI 상에는 gtk_text_view 를 이용하여 일반 텍스트파일을 보여주는 부분이 있습니다. (이하 '텍스트박스'라 표현하겠습니다.)

제가 추가구현 하고싶은 부분은 텍스트박스에 표시되는 파일이 변경되었을 때 (gtk UI 가 러닝중..)
실시간으로 텍스트박스가 갱신되는 것입니다.

현재는 파일이 변경되는 부분을 스크립트로 작성하여, gtk UI 를 다시 실행하여 갱신하고 있습니다.
이렇게 하면 텍스트파일이 변경되었을 때, UI 를 kill 후 다시 run 하여, 화면에서 UI 가 사라졌다가 다시 살아나면서 텍스트박스가 갱신 됩니다.

이 부분을 UI 를 죽였다가 실행시키는 과정없이 텍스트박스만 refresh 하고자 함이 목표입니다.

sincs912의 이미지

자바 공부중인데 public static void main(String[] args)에 대해서 질문입니다.

public static void main(String[] args) {

//public는 접근 제한자로 어디서든지 참조 할수 있는 넓은 범위를 의미한다.
//static는 정적이라는 의미로 메모리에 제일 먼저 로딩되는 것이다.
//void 리턴값을 의미한다 void는 리턴값이 없다는 뜻이다.
//(String[] args) 이름이 args인 String형의 배열

이정도로 알고 있는데

더 정확히 알고 싶어서 그런데

자세히 설명 해주시면 안될까요

alkfjalfja의 이미지

sscanf() 질문...

아래와 같은 c code가 있는데...

sprintf의 %%%u[^\x01-\x1f] 부분과

sscanf 함수 내의 사용 방법에 대한 이해가 잘 되지 않습니다.

도움 좀 부탁 드리겠습니다.

====================================================
u8 include[513];
u8 fmt[20];

................

sprintf((char*)fmt, "%%%u[^\x01-\x1f]", 512);
sscanf((char*)tmp + 8,(char*)fmt, (char*)include);
====================================================

twinwings의 이미지

C에서는 auto나 decltype 같은 예약어가 도입될 가능성이 없을까요?

혹시나 해서 gcc -std=c11 옵션 주고 해봤는데 역시나 안되네요.

간단한 매크로 작성(swap 같은) 할 때 편할 것 같은데...

dlagyrbs의 이미지

선배님들 OS hierarchical page table 기법에 대해 궁금한게 있습니다.

운영체제 공부를 하면서 몇가지 궁금한것들이 생겼는데요

1. hierarchical page table 기법이 나오게된 정확한 이유가.. Virtual Memory 공간이 너무 커져서 탄생하게 된건가요?
예를 들면 32bit 머신에서 64bit 머신으로 바뀌게 되면 2^64 bit의 가상주소공간이 필요하게 되었고 이를 표현하기위한 페이지 테이블의 갯수가 너무 많이 증가하여서 이런 문제점을 해결하려고 만들어진것인지 궁금합니다.

kimtaehan91의 이미지

c언어 기본적인 질문

안녕하세요 C언어를 공부하고있는 학생입니다.

리눅스 환경에서 공부를 하고 있습니다.

질문은 리턴 값에 관한 건데 최근 엔디안이란걸 알아서 리틀 -> 빅엔디안 변환하는 과정에서 궁금한게 있어 질문합니다.

아래와 같이 스왑 해주는 함수를 만들어서 스왑까지 성공을 했는데

int int_swap(int int_buf,int int_buf_size)
{
int i;
int output_int_buf;
char *char_buf = (char*)&int_buf;
char *output_char_buf = (char*)&output_int_buf;

for(i = 0; i < int_buf_size; i++)
output_char_buf[i] = char_buf[int_buf_size - i - 1];

return output_int_buf;
}

mydream의 이미지

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

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

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

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

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

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

페이지

프로그래밍 QnA 구독하기