NULL 문자를 대입할때 이렇게 해도 되나요?

superkkt의 이미지

char buf[] = "test:12345";
char *ptr;

ptr = strchr(buf, ':');
*ptr = 0;

위에서 *ptr = 0 부분이 문자 0을 대입하는건가요? 아니면 null 문자를 대입하는건가요? 항상 *ptr = '\0' 이렇게만 써왔는데 위와 같이 하는 코드가 책에서 나오네요. 설마 문자 0을 대입할리는 없고..

kimkh0304의 이미지

아스키코드표를 보면.. 0이 '\0'에 해당하기 때문에 괜찮습니다..

나는오리의 이미지

0x0;;;;;;;;;;;;;;;;;;;;;;;;;

ㅡ,.ㅡ;;의 이미지

전 항상 그렇게 합니다. 생각해보니 '\0' 이라고 쓴기억이 C배울때써본것외에 없는듯하군요..

'\0' 키보드 한번두드릴것을 무려 키보드를 4번이나 두드려야되서...ㅡ,.ㅡ;;

딴얘기지만.... 어떤사람은 "어쩌고 저쩌고.. \0" 이라고 해놓은사람 몇명봄..ㅎㅎ


----------------------------------------------------------------------------

7339989b62a014c4ce6e31b3540bc7b5f06455024f22753f6235c935e8e5의 이미지

'\0'이 더 명료하지 않을까요? :)

moonzoo의 이미지

욕심많은오리 wrote:
0x0;;;;;;;;;;;;;;;;;;;;;;;;;

저도 주로 NUL 문자를 쓸경우에는 0,'\0'보다는

0x00을 씁니다.

hyperhidrosis의 이미지

저는 그냥 0 을 씁니다만
'\0' 이 좀더 의미가 명확하지 않나요?

kfmes의 이미지

저도 0 이라고 씁니다 -_

----------------------------------------

kane의 이미지

'\0'보다는 차라리 NULL이 더 명료하지 않나요?

익명 사용자의 이미지

Quote:
'\0'보다는 차라리 NULL이 더 명료하지 않나요?

전통적으로 (C++이 아닌) C에서 NULL은 (void *)0으로 정의됩니다. 당연히 널 캐릭터가 들어갈 곳에 사용해서는 안됩니다. 지금 이분은 널 포인터와 널 캐릭터를 혼동하고 계십니다.
쌀밥의 이미지

제가 프로그래밍 실력이 부족한가보다.. 하는 생각을 잠시 했습니다.

제 기억 속에는 '\0' 이라는 표현 자체가 없군요.

항상 EOS 은 숫자 0 이라고 생각해왔는데.... 허허..

참고로. 저는 종종 이런식으로 사용합니다.

TCHAR szTmp[256];
_sntprintf(szTmp, 256, _T("%s"), strSomething.c_str());
이렇게 하고나서는.. 불안하니까

szTmp[255] = 0;
이렇게 덧붙입니다.

일하는 사람들의 희망 민주노동당 : http://www.kdlp.org
반공 교육의 성과로, 민주주의의 반대가 공산주의(또는 사회주의)라고 생각하는 사람이 많다.

pynoos의 이미지

NUL 문자 : '\0'
NULL 포인터 : (void *) 0
null 스트링 : ""

과 같이 씁시다.

NULL 문자...
null 문자...
아닙니다.

약간의 단어 정리를 해봤습니다.

익명 사용자의 이미지

쌀밥 wrote:
TCHAR szTmp[256];
_sntprintf(szTmp, 256, _T("%s"), strSomething.c_str());
이렇게 하고나서는.. 불안하니까

szTmp[255] = 0;
이렇게 덧붙입니다.

traditional한 방법이죠...

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.