ถกปัญหาภาษาซี

เริ่มโพสต์โดย Earthchie, 09 ส.ค. 2008, 17:01 น.

0 สมาชิก และ 1 บุคคลทั่วไป กำลังเปิดอ่านโพสต์นี้

Earthchie

// แก้ชื่อจู๋นะครับ

คือผมใช้ Dev-c++ อยู่ แต่รู้สึกว่ามีปัญหาหลายอย่าง

ใช้คำสั่ง clrscr ก็ไม่ได้ คำสั่งบางอันก็ใช้งานไม่ได้ เช่น

#include <stdio.h>
#include <conio.h>
void printx (int,char);

main()
{
    int num;
    char cha;
    printf ("Input side :");
    scanf ("%d",&num);
    printf ("Input character :");
    scanf ("%c",&cha);
   
   
    printx (num,cha);
   
    getch();
    return 0 ;
}

    void printx(int num,char cha)
    {
         int i,j;
         for (i=1;i<=num;i++)
         {
             for (j=1;j<=num;j++)
             {
             printf ("%c",cha);
             }
         printf ("\n");
         }
    }


ถ้ารันใน DEV-C++ แล้วมันจะรับค่าแค่ Input side : แล้วเดี้ยงไปเลย

กลับกัน ถ้าสลับที่โค้ด เอา Input character : ขึ้นมารับค่าก่อน จะรันได้  :08:

ป.ล. ไม่เอาหน้่าตาแบบดอสเหมือน turbo C นะครับ ตัวอื่นที่ไม่ใช่ VC++  ด้วยครับ ใครพอจะมีมั่งครับ  :46:
ชื่อ Earth ครับ เรียกเอิดก็ได้ | Earthchie's Blog

ยุนเอ



ถ้าแค่เอามาเขียนอย่างเดียว notepad++, editplus ก็โอนะครับ
เราจะต้องการอะไรมากมายไปกว่า อะไรมากมาย

Bellbells

ตอนนี้ลองใช้ c-free อยู่ครับแต่ ใช้บางคำสั่งอย่าง clrscr ไม่ได้เหมือนกัน อย่างอื่นไมไ่่ด้ลอง
แต่ปกติดใช้ turbo c ก็สวยดีนะได้ฟีลดีออก  :56:

Earthchie

อ้างคำพูดจาก: ^-FakE-^ เมื่อ 09 ส.ค. 2008, 17:05 น.

ถ้าแค่เอามาเขียนอย่างเดียว notepad++, editplus ก็โอนะครับ

อ๋อ อยากได้ที่มันคอมไพล์ได้ด้วยครับ
ชื่อ Earth ครับ เรียกเอิดก็ได้ | Earthchie's Blog

ต้น


Earthchie

เขียนบนโน๊ตบุ๊คอ่ะครับ

CPU : core2duo t7500 2.0 GHz
RAM : 2048 MB

ไม่แน่ใจว่าไหวมั๊ย

ว่าแต่ฟรีหรือเปล่า โหลดที่ไหนครับ

ขอบคุณครับ
ชื่อ Earth ครับ เรียกเอิดก็ได้ | Earthchie's Blog

REROYD

#6
ใช้ Borland C++ 3.1 For Windows ครับ  :53:

แต่ถ้าอยากจะเขียนบน Dos มันก็มีตัว Dos ไว้ให้ด้วยครับ

(เพราะคำสั่งบางตัว เช่น Delay(); มันใช้กับตัวบน windows ไม่ได้) :53:

ต้น

Eclipse เป็น Open Source IDE ครับ ดังนั้นฟรีแน่นอน

โดยพื้นฐานแล้วถูกพัฒนาโดยใช้ Java เวลาใช้งานจึงต้องมีการติดตั้ง Java

ซึ่งอาจจะเป็น JRE หรือ JDK ก่อนนะครับ ไม่งั้นจะไม่สามารถรันได้

โดยทั่วไปแล้ว Eclipse มักจะถูกนำไปใช้งานในการพัฒนา java application ซะมากกว่า

แต่ด้วยจุดเด่นที่สามารถติดตั้ง plugin เพิ่มได้ ก็เลยมี Eclipse C/C++ ออกมาให้ใช้งานกันครับ

ดาวน์โหลดได้ที่ http://www.eclipse.org/downloads/  เลือกตรงที่เป็น Eclipse IDE for C/C++ Developers (68 MB)

โหลดมาแล้ว Extract ออกก็สามารถใช้งานได้เลยครับ

Earthchie

#8
โอ้วๆ ขอบคุณทุกคนมากครับ เดี๋ยวจะลองดู ไล่โหลดอยู่ ขอบคุณครับ  :46:




อ้างคำพูดจาก: แบงก์ [19] เมื่อ 09 ส.ค. 2008, 19:03 น.
ใช้ Borland C++ 3.1 For Windows ครับ  :53:

แต่ถ้าอยากจะเขียนบน Dos มันก็มีตัว Dos ไว้ให้ด้วยครับ

(เพราะคำสั่งบางตัว เช่น Delay(); มันใช้กับตัวบน windows ไม่ได้) :53:


ยังงงๆอยู่ครับ เพิ่งเรียนได้สองเดือน

ถ้าเขียนบนวินโดวส์นี่มันจะเป็นแบบ vc++ ใช่มั๊ยครับ

คือผมเรียน DEV-C++ ครับ น่าจะบนดอสเพราะเวลารันมันขึ้นหน้าต่างเหมือนดอส
ชื่อ Earth ครับ เรียกเอิดก็ได้ | Earthchie's Blog

ลุงซัน

อ้างคำพูดจาก: EaRthCh!E* เมื่อ 09 ส.ค. 2008, 17:01 น.
คือผมใช้ Dev-c++ อยู่ แต่รู้สึกว่ามีปัญหาหลายอย่าง

ใช้คำสั่ง clrscr ก็ไม่ได้ คำสั่งบางอันก็ใช้งานไม่ได้ เช่น

คำสั่งจะไม่เกี่ยวกับเครื่องมือพัฒนา(เป็นส่วนของ compiler) แต่ IDE หลายอันมี compiler ในตัว
dev c++ เป็นเครื่องมือสำหรับการพัฒนา C/C++ Mingw compiler
ส่วน clrscr เป็นคำสั่งของค่าย borland จึงมีปัญหาหลายๆอย่างเพราะเราอยากได้คุณสมบัติของอีกค่ายแต่ใช้เครื่องมืออีกค่าย
สำหรับการใช้ clrscr ใน dev-c++ ลองอ่าน FAQ ครับ หรือ ที่นี่ก็ได้
http://www.thaibuddy.com (ฟรีดิกชันนารี่ ชี้แล้วแปล)
ผมรู้เล็กน้อย

Earthchie

โอ้ มิน่าล่ะ ขอบคุณครับ

แต่วิธีแก้นี่ผมงงๆครับ

สรุป ไม่มีคำสั่งมาตรฐานที่ทำงานได้แทนคำสั่งนี้เลยเหรอครับ
ชื่อ Earth ครับ เรียกเอิดก็ได้ | Earthchie's Blog

REROYD

#11




แบบนี้น่ะเอิร์ธ พอลงเสร็จ มันจะมีให้ทั้งตัวที่รันบน windows และตัวที่รันบน Dos เลย





ฟด:/Reroyd/Application
. :56:

Earthchie

 :25: ขอบคุณครับ กำลังจะทักเพราะทอเรนท์มันไม่มีคนปล่อย  :54:

เปลี่ยนชื่อจู๋ดีกว่า เดี๋ยวผมมีอะไรจะถามเกี่ยวกับภาษาซีอีกเยอะ  :30:
ชื่อ Earth ครับ เรียกเอิดก็ได้ | Earthchie's Blog

Earthchie

เบิล  :02:




ขอถามครับ

return 0; คืออะไรครับ

ถามอาจารย์เค้าบอกว่า มันต้องมีทุกครั้งที่จบโปรแกรม ความหมายแค่เตือนให้มันรู้ว่าจบโปรแกรมแล้วแค่นั้น  :09:

แต่ผมว่าไม่น่าใช่ เพราะไม่ใส่ผมก็รันได้  :08:

แล้วต่างกับ return(); ยังไงครับ ทำไมอันบนไม่ต้องมี ()

(คือไม่รู้เลยว่านี่มันคือคำสั่งอะไร ใช้ยังไง เมื่อไหร่ครับ)


อีกอันครับ

main () { }

void main (){ }

int main () { }

มันต่างกันยังไง (ปกติใช้ main เฉยๆ แต่หนังสือ my first book ANSI C ใช้ int main อาจารย์บางครั้งก็ใช้ void main)


ชื่อ Earth ครับ เรียกเอิดก็ได้ | Earthchie's Blog

REROYD

#14
เอาแบบงู ๆ ปลา ๆ ละกันนะ เริ่มเลือนลาง  :52:

main เป็นฟังก์ชันหลัก โปรแกรมจะรันที่ main นี้ก่อนฟังก์ชันอื่น

เรื่องการใช้ return มันมาจากชนิดของฟังก์ชันนั้น ๆ

int main()
หมายถึง ฟังก์ชัน main มีชนิดเป็น integer ฉะนั้น ต้อง return ค่า integer ให้มัน (ไม่จำเป็นต้องเป็น 0)
นั่นแปลว่า ถ้าเราเกิดใช้ char main() เราก็ต้อง return ค่าที่เป็น char (ไม่เกิน 65535 มั้ง) ให้มัน



#include "stdio.h"

char main(){

printf("hi");

return 'a';
}



void หมายถึงไม่มีค่า
void main() จึงเป็นฟังก์ชันที่ไม่มีการ return ค่า  (จึงไม่มีการ return ค่าเมื่อจบโปรแกรม)


#include "stdio.h"

void main(){

printf("Hi");

}


ส่วนเรื่องที่ถ้าตั้ง int main() แล้วไม่ return ก็สามารถรันได้ มันรันได้ครับแต่ถ้าสังเกตดี ๆ มันจะมี warning ว่า function should return a value (หรืออะไรเทือกนี่ล่ะ)
แล้วถ้าเราเขียนโปรแกรมที่ต้องใช้ค่าที่ return มาคำนวณด้วย ผลลัพธ์ก็จะผิดทันที

งงหรือเปล่าไม่รู้ เอางู ๆ ปลา ๆ ไปก่อน ยังไงเดี๋ยวให้ลุงซันหรือพี่ต้นมาอธิบายดีกว่า  :53:


SMF 2.1.7 © 2026, Simple Machines