انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


ارائه ۲۴٫۱۰ اوبونتو منتشر شد 🎉

نویسنده موضوع: ناتوانی در کامپایل به کمک gcc  (دفعات بازدید: 1394 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین Sir-Shadow

  • Jr. Member
  • *
  • ارسال: 69
  • جنسیت : پسر
ناتوانی در کامپایل به کمک gcc
« : 25 آذر 1389، 10:49 ق‌ظ »
سلام و عرض ادب  ;)

من تیکه کد زیر رو توی gedit وارد کردم ولی از طریق ترمینال با هردوی کامپایلر های g++ & gcc ارور میده.
[left]# include "stdio.h"

main()
{
int num=123;
int *pnum;
printf("num is %d\n",num);
printf("The address of num is %d\n",&num);
pnum=#
printf("pnum is %d\n",pnum);
printf("*pnum is %d\n",*pnum);
return 0;
}[/left]

این هم از ارور
[left]format '%d' expects type 'int', but argument 2 has type 'int *'
format '%d' expects type 'int', but argument 2 has type 'int *'[/left]

البته این کد توی ویندوز با visual studio بدون مشکل اجرا میشه
توی qt (اوبونتو) هم امتحان کردم بدون مشکل اجرا شد


مشکل دیگه ای که به وجود اومده این هست که وقتی توی qt از توابع دریافت ورودی مثل scanf و... استفاده میکنم برنامه کامپایل میشه ولی وقتی میخواد برنامه رو اجرا کنه توی اجرا میمونه (البته نه هنگ میکنه و نه ارور میده)

مثلا یه همچسن کدی رو
[left]main()
{
int a;
printf("Enter a number:");
scanf("%d",&a);
return 0;
}[/left]
اجرا نمیکنه
و توی compile output می نویسه
make : nothing to be done for 'first' .و اگر که تابع scanf رو حذف کنیم برنامه بدون مشکل اجرا میشه!

حالا به نظر شما اساتید چه باید کرد؟


آفلاین doomhammer65ir

  • High Hero Member
  • *
  • ارسال: 1572
  • جنسیت : پسر
    • IRAN Backup
پاسخ به: ناتوانی در کامپایل به کمک gcc
« پاسخ #1 : 25 آذر 1389، 11:40 ق‌ظ »
اینها ایراد نیست . هشدار است . مشکلی نیست . اجرا کنید
#include "stdio.h"

int main()
{
int num=123;
int *pnum;
printf("num is %d\n",num);
printf("The address of num is %d\n",&num);
pnum=#
printf("pnum is %d\n",pnum);
printf("*pnum is %d\n",*pnum);
return 0;
}
+++++++++++++
با QT و سی کار نکرده ام ولی این کد ها را بجای کد هاتان بنشانید شاید درست شد :
#include <iostream>
.
.
.
cout<<"enter a:";
cin>>a;
« آخرین ویرایش: 25 آذر 1389، 11:45 ق‌ظ توسط doomhammer65ir »

آفلاین سید وحید رضا برهانی

  • High Hero Member
  • *
  • ارسال: 1668
  • جنسیت : پسر
  • یک مخالف نرم افزار اوپن سورس
پاسخ به: ناتوانی در کامپایل به کمک gcc
« پاسخ #2 : 25 آذر 1389، 11:56 ق‌ظ »
سلام
جای من که درسته مطمئنی درست نوشتی؟
http://dl.dropbox.com/u/14392182/13.jpeg
نرم افزاری که نشه سیخ انگولکش کرد (به هر دلیلی چه به‌خاطر قانون و چه پیچیدگی یا توسعه سریع)نرم افزار آزاد نیست حالا مهم نیست چه بنیادی یا چه افرادی اون رو نوشته باشند یا GPL باشه یانه!
نرم افزار آزاد یک جنبش هست نه یک تیکه کاغذ پاره(GPL)
حق فهمیدن از حق خوندن مهمتره

آفلاین Sir-Shadow

  • Jr. Member
  • *
  • ارسال: 69
  • جنسیت : پسر
پاسخ به: ناتوانی در کامپایل به کمک gcc
« پاسخ #3 : 25 آذر 1389، 10:39 ب‌ظ »
doomhammer65ir جان به نکته ریزی اشاره کردی، ممنون!
البته کد هایی که دادی به کار من نمیاد به نظر میرسته که cpp باشه، متعصفانه نیاز به c دارم.

و اما شما سید وحید رضا برهانی
اول تشکر
دوم
مشکل اولم این بود که این کدی که عکسش رو گذاشتی ارور میداد که البته مشخص شد ارور نبوده و هشدار بوده(درضمن مشکل من با gedit و کامپایل از طریق ترمینال بود وگر نه همون بالا هم گفتم که توی qt بدون مشکل اجرا میشه)
اگر که قسمت آخر متنم رو بخونی نوشتم qt با توابع ورودی مثل scanf مشکل داره

این مشکل با توابع ورودی رو چیکار کنم؟

آفلاین sisyphus

  • Jr. Member
  • *
  • ارسال: 76
پاسخ به: ناتوانی در کامپایل به کمک gcc
« پاسخ #4 : 25 آذر 1389، 11:02 ب‌ظ »
به پیغام‌هایی که می‌ده بیشتر توجه کن.
در مورد اول gcc بهت شماره‌ی خط و مشکل رو گفته، جای %d انتظار int داره، ولی تو بهش int * دادی.


آفلاین Sir-Shadow

  • Jr. Member
  • *
  • ارسال: 69
  • جنسیت : پسر
پاسخ به: ناتوانی در کامپایل به کمک gcc
« پاسخ #5 : 25 آذر 1389، 11:16 ب‌ظ »
من یه متغیر به نام num مشخص کردم که از نوع int هست، من میخوام آدرس این متغییر یعنی num& رو چاپ کنم و اصولا آدرس متغییرها هم از نوع int هست مگر این که من اشتباه میکنم.
البته همان طور که دوستمون doomhammer65ir اشاره کرد این پیام فقط یه هشدار هست و برنامه بدون مشکل اجرا میشه!


از این قسمت بگذریم لطفا به قسمت دوم سوالم بپردازید(مشکل با QT)!

درضمن خیلی حال کردم، بچه های این فروم به سرعت نور پاسخ آدم رو میدن  ;)