그래서 문자열을 콘솔에 출력하기 위해 write() 시스템 호출 (printf 및 다른 옵션을 사용할 수 없음)을 사용하는 함수를 만들려고합니다. 그러나, 나는 걸쇠를 쳤다. 여기 콘솔에 인쇄하기 위해 write() 사용하기
내 기능입니다 :에 의해 호출되는static void doPrint (const char *s)
{
write (STDOUT_FILENO, s, sizeof(s));
}
:
doPrint (에 "Hello World \ n!")
그러나, 그것은 단지 출력합니다 :
안녕하세요
우와 내가 잘못 뭐하는 거지?
참고 : STDLIB에 대한 액세스 및 표준 입출력은 당신이 원하는 것을하지 않습니다
감사 이러한 맥락 sizeof
에서
당신은 64 비트 컴파일러를 가지고있어서 운이 좋았습니다 ... 32 비트 컴파일러를 사용하면'sizeof'를 그렇게 사용하는 것입니다;) – hyde