Results 1 to 7 of 7

Thread: #include "stdio.h" ต่างกับ #include "stdafx.h" ยังไงครับ

  1. #1
    Junior Member
    Join Date
    Aug 2009
    Posts
    13


    สังสัยมากนานแล้วอ่ะครับ

    เข้าใจว่า เป็น IO มาตรฐาน

    แต่ว่าทำไมถึงไม่เป็น Include ตัวเดียวกัน

    เวลาผมเขียนที่บ้าน ใช้ visual.net ก็จะ include "stdafx.h"

    พอจะไปส่งงานอาจารย์ ต้องมานั่งแก้ ให้เป็น "stdio.h"

  2. #2
    Member spicydog's Avatar
    Join Date
    Aug 2007
    Location
    Thailand
    Posts
    41


    ผมคิดว่าจริงๆแล้วมันก็เป็นแค่หัวไฟล์ที่จะรวมเข้าไปกับไฟล์ exe หลังการ compile อะครับ
    จะต้องไปดูว่าโปรแกรมที่เราใช้กับโปรแกรมที่อาจารย์ใช้นั้นต่างกันอย่างไรครับ
    สำหรับผมก็ยังไม่ได้เขียน visual.net แต่ก็เจอ c มาทั้งปีเหมือนกัน
    จากประสบการณ์แล้วคือ แค่เข้าไปแก้ชื่อไฟล์หัวในโฟลเดอร์ที่บรรจุำพวกไฟล์พวกนี้ไว้ เท่านั้นก็เรียบร้อยแล้วครับ
    เรื่องความแตกต่างก็ต้องลองคัดลอก stdio.h ของอาจารย์ มาเทียบกับ stdafx.h ว่ามีฟังก์ชั่นตัวไหนเหมือนหรือต่างกันบ้างครับ ความแตกต่างกันก็คงจะเท่านั้นล่ะครับ
    ส่วนถ้าไม่อยากเปลี่ยน ก็ลองแก้ชื่อไฟล์ที่เป็น stdafx ให้เป็น stdio ดูครับ
    แล้วลอง compile ดูว่าผ่านไหม ถ้าผ่านก็จบละครับ เวลาจะ include ก็ใช้ stdio ไปเลย
    เพราะตามความคิดของผมแล้ว พอใช้เรื่อยๆขึ้นไป ไฟล์พวกนี้มันก็ต้องเปิดเพิ่มเติมไปเรื่อยอะครับ
    บางทีก็มีซ้ำกันด้วยซ้ำ จะใช้ยังไงก็ตาม สุดท้ายแล้ว ผลลัพธ์ก็ออกมาอย่างเดิม
    แต่อย่างไรก็ต้อง ต้องดูที่ compiler ด้วยนะครับ ผมใช้ TurboC ก็ไม่แน่ใจเหมือนกันว่าตัวอื่นจะแก้ได้เหมือนกันหรือเปล่า เพราะมันก็คงจะซับซ้อนมากกว่า TurboC เป็นธรรมดา
    [b]spicydog[/b]

  3. #3
    Junior Member
    Join Date
    Aug 2009
    Posts
    13


    มันทำหน้าที่แบบเดียวกันครับ..

    คือเป็น IOมาตารฐาน

    แต่ผมสงสัยว่าทำไม ถึงไม่ใช้ชื่อเดียวกันไปเลย...

  4. #4
    Junior Member
    Join Date
    Apr 2009
    Posts
    25


    จากที่ผมเรียนมาอาจารย์ผมก็ให้ใช้ได้ทั้ง2แบบเลยแต่อาจารย์ผมบอกว่ามันจะอยู่ที่การนำไปใช้เพราะบางครั้งอาจเกิดbugขึ้นได้เลยมีทั้ง2แบบเป็น IO มาตรฐานเพื่อเอาไว้ใช้

  5. #5
    Junior Member
    Join Date
    May 2008
    Posts
    3


    stdafx.h มันเป็นตัวเก็บ precompiled header ไม่ใช่เหรอครับ?
    [i]"Any fool can use a computer. Many do."(Ted Nelson)[/i]

  6. #6
    Junior Member
    Join Date
    Jun 2009
    Posts
    11


    stdafx.h

    เป็น file ที่ถูกสร้างขึ้น โดย visual program
    ถ้าท่านลองสังเกตดู โดยการสร้างโปรเจค หลายๆ แบบดู
    จะเห็นได้ ว่าทุกแบบจะมีการสร้าง ไฟล์ stdafx.h
    ขึ้นมา ขอให้ท่าน ลองเปิด file นี้ดู เปรียบเทียบกัน
    จะเห็นได้ ว่า สิ่งที่เขียน หรือ include header และ preprocess
    มันจะมีความแตกต่างกันออกไป และท่านยังสามารถ พบ
    stdio.h มีการ include เข้ามาเก็บไว้ ในบางโปรเจค อีกด้วย

    สิ่งที่ผม เข้าใจ ก็คือ
    file stdafx.h นี้ ถูกสร้างขึ้น โดย อัตโนมัติ ตามสภาพ แวดล้อม
    ของ โปรเจค ที่ ท่านเลือกมาเพื่อใช้งาน นั่นเอง น่ะครับ

  7. #7
    Junior Member
    Join Date
    Sep 2009
    Posts
    4


    ผมเพิ่งได้่เรียนมาเทอมเดียว แต่ความรู้ยังไม่แน่น

    คิดว่าเปนตัว header file ประกาศต่างหน้าที่กันอ่ะคับ

Similar Threads

  1. Replies: 0
    Last Post: 22-10-2009, 11:57 PM
  2. Replies: 0
    Last Post: 21-06-2009, 09:48 PM
  3. Replies: 0
    Last Post: 26-03-2009, 09:19 PM
  4. Steroid bust shows Feds can still get at "private" and "secure" e-mail
    By newsbot in forum World Hacking/Security News
    Replies: 0
    Last Post: 10-11-2007, 04:08 PM
  5. Replies: 0
    Last Post: 28-08-2007, 10:38 AM

Members who have read this thread : 0

Actions : (View-Readers)

There are no names to display.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •