[완료] restrict 사용법 & man 페이지에서 printf(5) 처럼 특정 숫자 보는 방법..

semtul79의 이미지

동일 메모리 블럭을 가리키지 않는다는 표현으로 restrict 를 쓴다고 들었습니다.

1)
실제로는 restrict 만 쓰니까 컴파일 에러가 나고 __restrict__ 를 써야하는군요..
밑줄 붙은거랑 완전 동일한건가요?

2) 아래와 같이 동일 메모리 블럭을 가리키도록 만들었는데.. 역시나 잘 컴파일이 되는군요
즉 restrict 는 프로그래머의 몫인거죠?
char * __restrict__ filename;
filename = (char*)malloc(100);
char *ppp;
ppp = filename + 10;

3) 실제로 restrict 는 최적화 잘 하기위해 필요한걸로 알고있습니다.
void function1(char * restrict src, char * restrict dest );
라는게 있다면, 두 인수에는 에일리어싱 된 값을 넣지말라는 걸 뜻하고, 컴파일러에게 "겹치지 않으니 최적화 잘 해보거라~" 라는
뜻밖에 없는것이지.. 컴파일러가 스스로 두 인수를 비교해서 에일리어싱 된것인지 판단하는 부분은 없는거죠?
즉.. restrict 는 완전히 프로그래머가 잘 해야하는거지..컴파일러가 따로 체크해주는건 없는거죠?

4) 마지막으로..
man printf 하면 PRINTF(1) 만 나옵니다.
숫자의 의미는 무엇이며.. PRINTF(2)를 보고싶을때 어떻게 해야하죠?

그럼 고수분들의 조언 부탁드려요~~

cinsk의 이미지

1) man gcc (특히 -std option)

2)
네.

3)
네.

4)
숫자 1의 의미는 "man 1 intro", 숫자 N의 의미는 "man N intro".
각 수치는 매뉴얼의 볼륨 번호를 의미합니다.
printf(3)의 매뉴얼을 보려면 "man 3 printf"를 쓰면 됩니다.

--
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
Korean Ver: http://www.cinsk.org/cfaqs/

sky119m의 이미지

1.사용자 명령 (User Commands)
2.시스템 호출 (System Calls)
3.C 라이브러리 함수 (C Library functions)
4.디바이스와 네트워크 인터페이스 (Devices and Network Interfaces)
5.파일 포맷 (File Formats)
6.게임과 데모 (Games and Demos)
7.환경, 테이블, 매크로 (Environments, Tables, and Macros)
8.시스템 관리 (Maintenance Commands)

출처 http://man.kldp.net/wiki

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.