프로그래밍 QnA

sof.midnight의 이미지

C에서 함수 중첩하는건 별로 안 좋나요???

C를 배운지 얼마 안된 꼬꼬마인데..

파이썬을 학교 수업으로 들었을 때 프로그래밍을 하다가 문득 함수 중첩을 해보았는데 잘 되더라구요.

그래서 그걸 C로도 가져왔는데 문제 없이 컴파일 되고 동작은 되는데.

검색을 해보니 http://snowall.tistory.com/2541 요기 게시물 덧글에 함수 중첩에 대해 토론?이 있더라구요.

결론은

C에서 함수 중첩을 하는게 안 좋은 프로그래밍 습관일까요??

너무 질문이 모호하나;;;

ant01의 이미지

html 작성시 컴퓨터 마다 다르게 보이는 현상

독타입도 지정하고 여러분이 알려 주시는데로 하여 메뉴를 와성했다고 생각했었습니다.

그런데 다른 사람에게 좀 봐달라고 하니 배경색부분이 하얗게 나온다고 하였습니다.

내 컴퓨터에서는 잘 나오는 데... 하여 또 다른 컴퓨터에서 확인하니 과연 배경색이 하얗게 나왔습니다.

인터넷에서 다운 받은 소스를 수정한 것인데 다운 받은 그대로를 테스트하니 마찮가지 였습니다.

아래에 다운 받은 소스 올립니다. 어디를 손 봐야할지 알려주시면 감사하겠습니다.

그런데 서로 다르게 나오는 브라우져 확인하니 모두 익스플로러 8이었습니다.

dltkddyd의 이미지

operator= 연산자와 operator+ 연산자

클래스를 하나 만들었습니다. 그리고 그 클래스 타입의 가산연산을 지원하기 위해 operator+ 이항연산자와 operator= 이항연산자를 재정의했습니다. 그리고 생성자를 또 하나 만들었고요.
operator+ 연산자는 동일한 클래스의 객체를 매개변수로 받아들입니다. 그리고 함수내부에서는 동일한 클래스로 객체를 선언해서 그 객체에 나름의 방식으로 두 인수의 합을 저장합니다. + 연산은 두 항의 값을 변경해서는 안되기 때문이죠. 그리고 operator= 연산자에서는 operator+ 함수의 반환값을 인ㅅ로 받습니다. 그 과정 중에 만들었던 생성자가 호출되고요. 말로 하자니 복잡하네요. 만들었던 함수를 직접 언급하겠습니다. 정의한 클래스 이름은

template
class Array

위와 같습니다. 그리고 그 안에 멤버함수는 다음과 같고요.

byulparan의 이미지

sendto,write 함수는 thread-safe 한가요?

같은 시간에, 같은 파일디스크립터를 향해, 복수개의 쓰레드에서 쓰기 작업을 한다면
결과가 어떻게 될까요?

구글링을 해보니, 절대적으로 안전하다. 라는 의견도 있고, 안전하지 않다고 이야기 하는
사람도 있어서 혼란스럽네요.

그냥 속편히 동기화된 큐같은 걸 이용해서, 보내면 되겠지만 만약 안전하다면, 구지
쓰레드를 하나 더 만드는게 낭비라는 생각이 들어서요.

가령 A 쓰레드에서 "AAAA" 를, B 쓰레드에서 "BBBB" 를 같은 시간에 같은 소켓을
향해서 쓸때, 받는쪽에서 "AABABBAB" 식으로 데이터가 망가질 수도 있는지 궁금합니다.

테스트를 여러번 돌려봐도 위와 같은 경우는 없었지만, 멀티쓰레드상에서 벌어지는 일이라
나온 결과를 신뢰 할 수 가 없네요.ㅎㅎ

쓸려고 하는건 udp 이긴 한데 tcp/udp 양 쪽 모두 궁금하네요.
작업환경은 linux 와 os x 입니다. 감사합니다.

declspec의 이미지

리눅스 커널 for_each_process 와 ps 질문

안녕하세요

아래와같이 task_struct 의 연결리스트중에 특정 태스크에 대해서
포인터를 조작해서 숨기는, process 를 감추는 작업을 리눅스에서 테스트했습니다.
그런데 분명 제대로 했고, 아래의 작업을 거친후에 for_each_process 를 돌리면
더이상 숨겨진 task 는 나타나지 않습니다.
하지만 ps x 를 해보면 해당 프로세스가 여전히 계속 나타나네요
왜그런걸까요?

ps 가 내부적으로 커널의 task_struct 의 리스트를 순회하는거로 알았었는데
이게 아닌가요??

fleabane의 이미지

[완료] shell script를 이용하여 특정 단어 치환하는 방법

안녕하세요

오전내내 끙끙 거리다가 계속 안풀려서 도움을 요청하고자 글을 올립니다.

하고 싶은 방식은 단순합니다. Version을 명기하는 Header 파일이 있습니다.

//Version.h
#define VERSION "0.1.2"

이 define을 특정 값으로 변경하는 Script를 작성하려고 합니다.
문제는 변경하려는 값("0.1.2")가 항상 동일한 값을 가지는것이 아니라 치환하려는 Target으로 사용할 수가 없어서
그 앞에 있는 VERSION을 Target으로 하여 그 뒤의 단어를 치환하려고 했는데 방법을 모르겠어서 일단
해당 line을 지워버리고 line에 새로운 문자열을 넣는 방식으로 시도를 해보았습니다.

yun8085의 이미지

sms 전송 모듈? (MFC)

문자 메세지 전송 프로그램을 만드려고 서핑하다가 coolSMS 라는 업체를 찾았는데
보통 SMS 전송 모듈은 어떤 라이브러리를 사용 하시나요??

프로그램 제작 언어는 MFC입니다.

페이지

프로그래밍 QnA 구독하기