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

کمک و پشتیبانی => برنامه‌سازی => نویسنده: learner:~$ در 17 شهریور 1402، 02:07 ب‌ظ

عنوان: چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 17 شهریور 1402، 02:07 ب‌ظ
درود و صد درود!!

چند سوال برنامه نویسی و مروبوط به کامپیوتر دارم که ممنون میشم جواب بدید  :)

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

۱:

آیا میشه یک shell  جدید با زبان اسمبلی درست کرد؟؟‌و آیا پرفورمنس (‌فارسیش رو نمیدونم دقیق اما فکر کنم بشه کیفیت؟؟ ) بهتری داره ؟؟ و اینکه میشه واقعا همچین کاری کرد؟؟
---------------------------------

۲:
کلمات کلیدی که کامپایل جی سی سی به زبان سی اضافه کرده چیه؟؟
----------------------------------

۳:
آیا میشه برای زبان سی کتابخانه ایی طراحی کرد که مفهوم شئ گرایی رو به این زبان اضافه کرد؟؟
-----------------------------------

۴:
آیا نوع داده  boolean ( در زبان سی )  وجود داره؟؟ من رفتم تحقیق کردم و فهمیدم نوع داده ایی به نام  bool  وجود نداره اما با یک کتابخانه خاص میشه ازش استفاده کرد.
از طرفی دیگه در استاندارد های جدید تر این  نوع داده به صورت پیشفرض وجود داره!
کدومش بهتره اینکه از استانداره های جدید تر استفاده کنم یا از کتابخانه مطمعن؟؟
----------------------------------------------------------------------------

۵:
تفاوت اینها در چیست: ( زبان سی )

i , %d%

f , %g ,% G%
------------------------------------------

شرمنده سوالات یکم زیاد بود اما اگر بتونید فقط به یکیش هم پاسخ بدید ممنون میشم :) ( به صورت درست ! )
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: nixoeen در 17 شهریور 1402، 03:09 ب‌ظ
آیا میشه یک shell  جدید با زبان اسمبلی درست کرد؟؟‌و آیا پرفورمنس (‌فارسیش رو نمیدونم دقیق اما فکر کنم بشه کیفیت؟؟ ) بهتری داره ؟؟ و اینکه میشه واقعا همچین کاری کرد؟؟
بله. خیر. بله.

آیا میشه برای زبان سی کتابخانه ایی طراحی کرد که مفهوم شئ گرایی رو به این زبان اضافه کرد؟؟
بله.

آیا نوع داده  boolean ( در زبان سی )  وجود داره؟؟ من رفتم تحقیق کردم و فهمیدم نوع داده ایی به نام  bool  وجود نداره اما با یک کتابخانه خاص میشه ازش استفاده کرد.
از طرفی دیگه در استاندارد های جدید تر این  نوع داده به صورت پیشفرض وجود داره!
کدومش بهتره اینکه از استانداره های جدید تر استفاده کنم یا از کتابخانه مطمعن؟؟
می‌تونید از byte یا char استفاده کنید.
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: 🇬🇧بریتانیای کبیر🇬🇧 در 17 شهریور 1402، 03:34 ب‌ظ
i% و d% فرقی ندارن ولی از d% استفاده میشه.

f% برای نمایش اعشاری معمولی
e% برای نمایش اعشاری نمایی با e کوچک
E% مثل e% ولی با ،E بزرگ
g% برای انتخاب بین نمایش اعشاری معمولی و نمایی. حرکدوم طول کارکتری کمتری داشت
G% مثل ،g% فقط نمایش نمایی را با E نشان میده.

https://en.m.wikipedia.org/wiki/C_data_types
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 17 شهریور 1402، 03:39 ب‌ظ
نقل‌قول
بله. خیر. بله.

خب ولی باید سرعت و قدرت بهتری داشته باشه!!
نقل‌قول
می‌تونید از byte یا char استفاده کنید.
byte / char??  متوجه نمیشم چرا از نوع کاراکتر؟؟ درضمن من داده ایی از نوع بایت ندیدم؟؟ چطوری از نوع بولین باید استفاده کنم؟؟
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: 🇬🇧بریتانیای کبیر🇬🇧 در 17 شهریور 1402، 03:43 ب‌ظ
نقل‌قول
byte / char??  متوجه نمیشم چرا از نوع کاراکتر؟؟ درضمن من داده ایی از نوع بایت ندیدم؟؟ چطوری از نوع بولین باید استفاده کنم؟؟
از char تا حجم کمتری را نسبت به int بگیره. نحوه استفاده رو تو هزارتا سایت توضیح داده
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: nixoeen در 17 شهریور 1402، 04:50 ب‌ظ
خب ولی باید سرعت و قدرت بهتری داشته باشه!!
خیر

byte / char??  متوجه نمیشم چرا از نوع کاراکتر؟؟ درضمن من داده ایی از نوع بایت ندیدم؟؟ چطوری از نوع بولین باید استفاده کنم؟؟
نوع byte رو توی سی‌پلاس‌پلاس یا زبانی مثل زبان برنامه‌نویسی Arduino می‌بینید. توی سی استاندارد، از همون char استفاده کنید. اگر ۰ باشه، false است و اگر هر چیز دیگه‌ای باشه، true حساب میشه. توی C99 البته bool هم داریم که خیلی شبیه char عمل می‌کنه. با این تفاوت که مثلا ۲ و ۳ رو با هم برابر می‌دونه، در حالی که char اینطور عمل نمی‌کنه.
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 17 شهریور 1402، 06:21 ب‌ظ
نقل‌قول
خیر
میشه بپرسم چرا خیر؟؟

نقل‌قول
نوع byte رو توی سی‌پلاس‌پلاس یا زبانی مثل زبان برنامه‌نویسی Arduino می‌بینید. توی سی استاندارد، از همون char استفاده کنید. اگر ۰ باشه، false است و اگر هر چیز دیگه‌ای باشه، true حساب میشه. توی C99 البته bool هم داریم که خیلی شبیه char عمل می‌کنه. با این تفاوت که مثلا ۲ و ۳ رو با هم برابر می‌دونه، در حالی که char اینطور عمل نمی‌کنه.
char  ماله کاراکتر و رشته ست؟؟ بایت رو اصلا ندیدم ( نوع داده )  الان استانداردی که به صورت پیشفرض برای جی سی سی هست کدومه؟
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: nixoeen در 17 شهریور 1402، 06:33 ب‌ظ
میشه بپرسم چرا خیر؟؟
در مورد کاربردهای اسمبلی مطالعه کنید.

الان استانداردی که به صورت پیشفرض برای جی سی سی هست کدومه؟
جی‌سی‌سی از استانداردهای مختلفی پشتیبانی می‌کنه. پیشنهاد من برنامه‌نویسی با استاندارد C17 است.
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 17 شهریور 1402، 08:02 ب‌ظ
میشه بپرسم چرا خیر؟؟
در مورد کاربردهای اسمبلی مطالعه کنید.

الان استانداردی که به صورت پیشفرض برای جی سی سی هست کدومه؟
جی‌سی‌سی از استانداردهای مختلفی پشتیبانی می‌کنه. پیشنهاد من برنامه‌نویسی با استاندارد C17 است.
دوست عزیز اگر به خاطر قابلیت حمل میگی که میشه در خود زبان سی هم اسمبلی نوشت!! در مورد کاربرد اسمبلی  تا حدی که توان داشتم تحقیق کردم و خیلی هم بهش علاقه مندم
-------------
نظرتون در مورد استاندارد202X چیه؟؟ اصلا نمیفهمم چرا زبان سی این همه استاندارد داره!!! بعضی هاشون فقط به خاطرتصحیح استاندارد های قبلی اومدن!!
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: دانیال بهزادی در 18 شهریور 1402، 03:38 ق‌ظ
من خیلی مشتاقم بدونم چرا فکر می‌کنی اسمبلی باید کارایی بیش‌تری از سی بده…
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 18 شهریور 1402، 11:41 ق‌ظ
من خیلی مشتاقم بدونم چرا فکر می‌کنی اسمبلی باید کارایی بیش‌تری از سی بده…
;D چون سریع، قدرتمند ، و دسترسی  خیلی زیاده ببه سخت افزار داره !

فکر کنم تنها کسی که در انجمن به زبان اسمبلی علاقه داره بنده هستم  :'(
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: nixoeen در 18 شهریور 1402، 12:21 ب‌ظ
;D چون سریع، قدرتمند ، و دسترسی  خیلی زیاده ببه سخت افزار داره !
برای نوشتن یک Shell چه دسترسی‌ای به سخت‌افزار لازم دارید که مثلا توی C یا Rust ندارید؟
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 18 شهریور 1402، 12:57 ب‌ظ
;D چون سریع، قدرتمند ، و دسترسی  خیلی زیاده ببه سخت افزار داره !
برای نوشتن یک Shell چه دسترسی‌ای به سخت‌افزار لازم دارید که مثلا توی C یا Rust ندارید؟
دلم میخواد یک شل باشه که قابلیت شي گرایی داشته باشه!! و سرعت فوق الهاده ایی داشته باشه  \\:D/

الان که برنامه نویسی حرفه ایی نیستم ولی در آینده پروژه ی خوبی میشه برای من  ;) یک روز حتما عملیش میکنم وشاید ایده های دیگری هم بهش اضافه کردم
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 18 شهریور 1402، 03:16 ب‌ظ
خب به یک باگ (‌یا شاید هم مشکل ؟ ) برخورد کردم! ( زبان سی ) امیدوارم که مثل همیشه کمک کنید  :)

لطفا کد زیر رو مد نظر داشته باشید ( نحوه کامپایل: gcc your-code -lcurses)
#include <stdio.h>
#include <curses.h>
int main(){
initscr();
clear();
int f = 1;
while(f <= 10){

printw("%d\n\n", f);
f++;
}
refresh();
getch();
endwin();

return 0;
}


خروجی که به شما میده خیلی مرتب و زیبا هست و حیلی هم راضی کنند؛ اما وقتی  به جای ده ۱۰۰ رو قرار میدیم اعداد خیلی در هم برهم میشن!! میشه بپرسم چرا؟!  ](*,)
----------------------------
خب حالا کد زیر رو در ظر داشته باشید ( نحوه کاممپایل باز هم به صورت قبله)
#include <stdio.h>
#include <curses.h>
int main(){
initscr();
clear();
int f = 1;
while(f <= 100){

printf("%d\n\n", f);
f++;
}
refresh();
getch();
endwin();

return 0;
}

البته شما میتونید به جای ‍۱۰۰ هر عددی که دوست دارید بزارید  :D
خب الان خروجی که به شما تحویل میده به صورت مارپیچی و منحنی هست!! من فقط ای یک تابع ساده printf  استفاده کردم!!
----------------
ممنون میشم بهم بگید چرا همچین اتفاقی میفته  ](*,)
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: دانیال بهزادی در 18 شهریور 1402، 05:33 ب‌ظ
دلم میخواد یک شل باشه که قابلیت شي گرایی داشته باشه!! و سرعت فوق الهاده ایی داشته باشه  \\:D/

الان که برنامه نویسی حرفه ایی نیستم ولی در آینده پروژه ی خوبی میشه برای من  ;) یک روز حتما عملیش میکنم وشاید ایده های دیگری هم بهش اضافه کردم
می‌دونید که تقریباً همهٔ بزرگان برنامه‌نویسی به شدّت با مفهوم شی‌گرایی مخالفن؟
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 18 شهریور 1402، 05:42 ب‌ظ
دلم میخواد یک شل باشه که قابلیت شي گرایی داشته باشه!! و سرعت فوق الهاده ایی داشته باشه  \\:D/

الان که برنامه نویسی حرفه ایی نیستم ولی در آینده پروژه ی خوبی میشه برای من  ;) یک روز حتما عملیش میکنم وشاید ایده های دیگری هم بهش اضافه کردم
می‌دونید که تقریباً همهٔ بزرگان برنامه‌نویسی به شدّت با مفهوم شی‌گرایی مخالفن؟
خب پس یم کتابخونه درست میکنم !! هرکسی دوست داشت استفاده کن هرکس هم نداشت نکنه! نه مثل زبان سی پلاس پلاس که ماهیت اصلیش شي گرایی باشه!!
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: behzad1 در 18 شهریور 1402، 05:56 ب‌ظ
دلم میخواد یک شل باشه که سرعت فوق الهاده ایی داشته باشه  \\:D/
برنامه‌هایی که با C نوشته شدن از نظر شما سریع نیستن؟ تا چه‌قدر می‌خوای سریعش کنی؟ :/
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: aFard در 18 شهریور 1402، 06:21 ب‌ظ
چرا؟ دلیلش چیه که باهاش مخالفن؟
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 18 شهریور 1402، 06:51 ب‌ظ
دلم میخواد یک شل باشه که سرعت فوق الهاده ایی داشته باشه  \\:D/
برنامه‌هایی که با C نوشته شدن از نظر شما سریع نیستن؟ تا چه‌قدر می‌خوای سریعش کنی؟ :/
تا دو یا  سه و نیم برابر سریع تر!!و توانایی کامپایل یک میلیون و سیصد هزار دستور ( هرچقدر بیشتر بهتر ) با یک هسته داشته باشه!! البته ایده های زیادی دارم اما اول باید یادبگیرم و بعد عملی کنم
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: nixoeen در 18 شهریور 1402، 06:59 ب‌ظ
نه مثل زبان سی پلاس پلاس که ماهیت اصلیش شي گرایی باشه!!
البته زبان سی‌پلاس‌پلاس ماهیت اصلیش شئ‌گرایی نیست. احتمالا با جاوا اشتباه گرفتید.
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 18 شهریور 1402، 07:01 ب‌ظ
نه مثل زبان سی پلاس پلاس که ماهیت اصلیش شي گرایی باشه!!
البته زبان سی‌پلاس‌پلاس ماهیت اصلیش شئ‌گرایی نیست. احتمالا با جاوا اشتباه گرفتید.
[/quote
اگر درست گفته باشم ما در زبان سی پلاس پلاس مفهوم کلاس ها رو داریم   ??? و اینکه ۹۰ درصد کسانی که با این برنامه کار میکنن دارن با مفهوم شي گرایی جلو میرن
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 18 شهریور 1402، 07:08 ب‌ظ
نه مثل زبان سی پلاس پلاس که ماهیت اصلیش شي گرایی باشه!!
البته زبان سی‌پلاس‌پلاس ماهیت اصلیش شئ‌گرایی نیست. احتمالا با جاوا اشتباه گرفتید.
اگر درست گفته باشم ما در زبان سی پلاس پلاس مفهوم کلاس ها رو داریم   ??? و اینکه ۹۰ درصد کسانی که با این برنامه کار میکنن دارن با مفهوم شي گرایی جلو میرن
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: 🇬🇧بریتانیای کبیر🇬🇧 در 18 شهریور 1402، 09:03 ب‌ظ
نقل‌قول
دو یا  سه و نیم برابر سریع تر!!و توانایی کامپایل یک میلیون و سیصد هزار دستور ( هرچقدر بیشتر بهتر ) با یک هسته داشته باشه!!
بازدهی فقط در سرعت نیست، مولفه های مختلفی داره. سرعت توسعه هم هست که اسمبلی در تمام زبان های بدترینه. اگه یه برنامه با اسمبلی بنویسی خیلی باید بیشتر کد بزنی و برای توسعه و تغیرش معمولا اصلا نمیتونی کاری کنی، چیزی که سی، راست را قدرتمند میکنه اینکه هم سرعت توسعه خوبی دارن و هم سرعت اجرای خوبی.
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 18 شهریور 1402، 10:28 ب‌ظ
چیز دیگری هم که وجود داره انعطاف پذیری هست که زبان اسمبلی واقعا انعطاف پذیری خوبی داره البته زبان سی هم فوق العاد ست و واقعا تعصب دارم روی زبان سی وچند زبان برنامه نویسی دیگه اما  اسمبلی یه چیز فراتره!!

حالا که فعلا بودجه نمیدن و کارخونم ورشکته شده ;D و پروژه هم کنسله  :P

اما اگر روزی خدا خواست و ما هم سواد کافی داشتیم چرا که نه؛ حتما اینکار رو میکنم  :)
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: hartin در 18 شهریور 1402، 11:35 ب‌ظ
دلم میخواد یک شل باشه که قابلیت شي گرایی داشته باشه!! و سرعت فوق الهاده ایی داشته باشه  \\:D/

الان که برنامه نویسی حرفه ایی نیستم ولی در آینده پروژه ی خوبی میشه برای من  ;) یک روز حتما عملیش میکنم وشاید ایده های دیگری هم بهش اضافه کردم
می‌دونید که تقریباً همهٔ بزرگان برنامه‌نویسی به شدّت با مفهوم شی‌گرایی مخالفن؟
حتی لینوس توروالدز هم مخالفه
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 19 شهریور 1402، 09:57 ق‌ظ
بخدا فعلا قصد همچین کاریو ندارم  :'(
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: alend در 19 شهریور 1402، 02:25 ب‌ظ
۳:
آیا میشه برای زبان سی کتابخانه ایی طراحی کرد که مفهوم شئ گرایی رو به این زبان اضافه کرد؟؟

آره قبلا هم انجام شده، الآن تغییرات بیشتری هم داره. اسمش هم سی پلاس پلاس است  :).
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: alend در 19 شهریور 1402، 02:28 ب‌ظ
دلم میخواد یک شل باشه که قابلیت شي گرایی داشته باشه!! و سرعت فوق الهاده ایی داشته باشه  \\:D/

الان که برنامه نویسی حرفه ایی نیستم ولی در آینده پروژه ی خوبی میشه برای من  ;) یک روز حتما عملیش میکنم وشاید ایده های دیگری هم بهش اضافه کردم
می‌دونید که تقریباً همهٔ بزرگان برنامه‌نویسی به شدّت با مفهوم شی‌گرایی مخالفن؟

کدوم برنامه نویسان؟‌و اینکه چه جایگزینی پیشنهاد می دهند؟
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: alend در 19 شهریور 1402، 02:38 ب‌ظ
۴:
آیا نوع داده  boolean ( در زبان سی )  وجود داره؟؟ من رفتم تحقیق کردم و فهمیدم نوع داده ایی به نام  bool  وجود نداره اما با یک کتابخانه خاص میشه ازش استفاده کرد.
از طرفی دیگه در استاندارد های جدید تر این  نوع داده به صورت پیشفرض وجود داره!
کدومش بهتره اینکه از استانداره های جدید تر استفاده کنم یا از کتابخانه مطمعن؟؟


اگر سوالتون رو این سایت جواب نمی دهد میشه بیشتر توضیح بدید که دقیقاً منظورتون چی هست؟

https://www.geeksforgeeks.org/bool-in-c/ (https://www.geeksforgeeks.org/bool-in-c/)
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: nixoeen در 19 شهریور 1402، 02:48 ب‌ظ
زبان اسمبلی واقعا انعطاف پذیری خوبی داره
البته کمترین انعطاف رو توی زبان‌های برنامه‌نویسی، اسمبلی داره.

در کل، من یادگیری اسمبلی رو پیشنهاد می‌کنم، ولی کاربرد اسمبلی وقتیه که نیاز به دسترسی خاصی در سطح سخت‌افزار دارید که بقیهٔ زبان‌ها اون دسترسی رو بهتون نمیدن.

کدوم برنامه نویسان؟‌و اینکه چه جایگزینی پیشنهاد می دهند؟
لطفا تمام پیغام‌تون رو در یک پست بنویسید، نه سه پست مختلف پشت هم.
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 24 شهریور 1402، 09:59 ب‌ظ
زبان اسمبلی واقعا انعطاف پذیری خوبی داره
البته کمترین انعطاف رو توی زبان‌های برنامه‌نویسی، اسمبلی داره.

در کل، من یادگیری اسمبلی رو پیشنهاد می‌کنم، ولی کاربرد اسمبلی وقتیه که نیاز به دسترسی خاصی در سطح سخت‌افزار دارید که بقیهٔ زبان‌ها اون دسترسی رو بهتون نمیدن.

کدوم برنامه نویسان؟‌و اینکه چه جایگزینی پیشنهاد می دهند؟

اتفاقا وقتی بخواید یک برنامه درست و حسابی و سطح پایین بنویسید اسمبلی حرف اول رو میزنه!! و فکر کنم

منظورشون لینوس توروالدز بود که راستم میگه و شي گرایی واقعا چیزه مزخرفیه!!

آیا آینده برای زبان اسمبلی وجود داره ؟؟ مخصوصا با وجود IOT
لطفا تمام پیغام‌تون رو در یک پست بنویسید، نه سه پست مختلف پشت هم.
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: thmkhtry در 27 شهریور 1402، 12:36 ق‌ظ
به عنوان نظر شخصی باید بگم که یه ذره با سی میتونم ارتباط برقرار کنم ولی با اسمبلی اصلا.
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 27 شهریور 1402، 10:28 ق‌ظ
این یک علاقه شخصیه! بر این مبنا نیست که من بگم من ار ربان پی اچ پی خوشم نمیاد و همه بگن آره منم خوشم نمیاد پس نمیریم سمتش :)

عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 30 شهریور 1402، 11:06 ق‌ظ
دوستان میشه منو در مورد این ارور راهنمایی کنید؟؟ تو سایت خوده گنو هم رفتم و توضیحی که داد در مورد گراف ها بود!
#include <stdio.h>
  #include <stdlib.h>
                                                                                                                                       
  int main(){
      int ran, my;
      char ans = 'y';
      ran = rand();
⚠     while(ans = 'y'){
      printf("gues my number!:");
      scanf("%d", &my);
      if(ran == my){
          printf("it is true\n");
          printf("my number was%d, and your number was%d", ran, my);
      }   
      else{
          printf("\n it's wrong!my rand was %d", ran);
      }   
⚠     printf("do you wanna continue??(y/n):");
      ans = getchar();
  }
      return 0;
      }   

خروجی:
h.c: In function ‘main’:
h.c:18:34: warning: trigraph ??( ignored, use -trigraphs to enable [-Wtrigraphs]
   18 |     printf("do you wanna continue??(y/n):");
      |                                   

مورد دیگه ایی هم که هست تابع  ()rand که یک عدد رندوم درست میکنه؛ برای من عدد تکراری درست میکنه!این طبیعه؟؟ انتظار خیلی بیشتری از این تابع داشتم  :P بقیه زبان های برنامه نویسی هم عدد تکراری درست میکند یا فقط زبان سی و یا یک مشکلی پیش اومده؟؟؟
-----
ادیت :
همین الان یه تغیر کوچیک تو برنامه دادم تا اون ارور رو رفع کنم!ولی خب همش عدد تکراری میده!!

gues my number!:23

 it's wrong!my rand was 1804289383do you wanna continuegues my number!:452

 it's wrong!my rand was 1804289383do you wanna continuegues my number!:1804289383
it is true
my number was1804289383, and your number was1804289383do you wanna continuegues my number!:


یک باگ تویه این برنامه هست!! من حتی وقتی y  رو میزنم برای من مینویسه عدد درسته !! نکته ایی هم که هست اینه که این برنامه باید با حلقه do while  نوشته میشد اما خودم خواستم با این حلقه نوشته بشه.
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: 🇬🇧بریتانیای کبیر🇬🇧 در 30 شهریور 1402، 12:08 ب‌ظ
من نمیدونم چجور عدد تصادفی هست که با هر بار تکرار یک ترتیب داره؟! به منم عدد تو رو داد.
کثیف تر هم میشه کد زد!
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: محمد رضا لامعی در 30 شهریور 1402، 12:15 ب‌ظ
به عنوان نظر شخصی باید بگم که یه ذره با سی میتونم ارتباط برقرار کنم ولی با اسمبلی اصلا.

هر ابزاری رو باید توی جای مناسب خودش استفاده کنی
اسمبلی برای ۹۹.۹۹٪ کار هایی که انجام میشه لازم نیست ولی یادگیریش برای کسی که میخاد یه درک عمیقی داشته باشه خیلی خوبه  :)
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 30 شهریور 1402، 12:45 ب‌ظ
من نمیدونم چجور عدد تصادفی هست که با هر بار تکرار یک ترتیب داره؟! به منم عدد تو رو داد.
کثیف تر هم میشه کد زد!
  من خیلی راحت میتونستم کد هایی که تو کتاب هست رو کپی پیست کنم !!! اما اینکار رو نکردم!! حداقل از خلاقیت خودم استفاده کردم و تلاش کزدم   8)
نقل‌قول

هر ابزاری رو باید توی جای مناسب خودش استفاده کنی
اسمبلی برای ۹۹.۹۹٪ کار هایی که انجام میشه لازم نیست ولی یادگیریش برای کسی که میخاد یه درک عمیقی داشته باشه خیلی خوبه 
یادگیری اسمبلی خودش چند بخش داره من که دوست دام تو کامپیوتر و سیستم عامل خودم غرق بشم یا بهتره بگم تو کرنل! و اون سیستم کال ها زیبا رو با چشم های خودم ببینم.
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: َUxmlai-ad در 30 شهریور 1402، 05:49 ب‌ظ
خب اینکه عادی هست که این جوری بشه.
الان فکر کن چجوری باید یه عدد تصادفی تولید بشه؟ خب باید یه الگوریتم براش در نظر بگیری. فرقی نمی کنه که چی باشه به هر حال تصادفی بودنش اون جوری که فکر می کنی نیست. (به هر حال باید از یه جایی یه عدد جور کنه. به هر حال از هیچی نمی شه)
کامپیوتر برای تولید عدد تصادفی از یه منبع استفاده میکنه که موقع راه اندازی سامانه ایجاد میشه.

حالا اگه نیازه که عدد تولید شده توسط تابع rand تصادفی تر باشه (تصادفی نما تر) میتونی بذر تصادفی عوض کنی. برای این کار از تابع srand استفاده میشه. باید یه مقدار unsigned رو به عنوان آرگومان بهش بدی. (srand و rand هر دو تاشون توی stdlib.h هستن)
یه چیزی مثل زمان فعلی برای seed گزینه جالبی هست.
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 30 شهریور 1402، 07:16 ب‌ظ
خب اینکه عادی هست که این جوری بشه.
الان فکر کن چجوری باید یه عدد تصادفی تولید بشه؟ خب باید یه الگوریتم براش در نظر بگیری. فرقی نمی کنه که چی باشه به هر حال تصادفی بودنش اون جوری که فکر می کنی نیست. (به هر حال باید از یه جایی یه عدد جور کنه. به هر حال از هیچی نمی شه)
کامپیوتر برای تولید عدد تصادفی از یه منبع استفاده میکنه که موقع راه اندازی سامانه ایجاد میشه.

حالا اگه نیازه که عدد تولید شده توسط تابع rand تصادفی تر باشه (تصادفی نما تر) میتونی بذر تصادفی عوض کنی. برای این کار از تابع srand استفاده میشه. باید یه مقدار unsigned رو به عنوان آرگومان بهش بدی. (srand و rand هر دو تاشون توی stdlib.h هستن)
یه چیزی مثل زمان فعلی برای seed گزینه جالبی هست.
SEED  چی هست؟  من فکر کردم بعد از هربار اجرا عدد عوض میشه! باید تستتش کنم!!!ا
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: esmaeelE در 31 شهریور 1402، 12:27 ق‌ظ
SEED  چی هست؟  من فکر کردم بعد از هربار اجرا عدد عوض میشه! باید تستتش کنم!!!ا

https://jadi.net/2019/04/computer-random

عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 31 شهریور 1402، 10:36 ق‌ظ
SEED  چی هست؟  من فکر کردم بعد از هربار اجرا عدد عوض میشه! باید تستتش کنم!!!ا

https://jadi.net/2019/04/computer-random
آخ جون  :D الان میرم
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 13 مهر 1402، 12:57 ب‌ظ
خب یه ایراد اساسی!
چرا کد زیر کامپایل نمیشه !! من با مشکلاتی که در این برنامه هست کار ندارم ولی  جی سی سی به من ارور میده
کد من :
#include <stdio.h>
#include <math.h>

int main(){
                               
    int a, b, FLAG = 1;
    while(FLAG){
    printf("enter an integer:");
    scanf("%d",&a);
    if(a <= 1){
        printf("give me another number");

        FLAG = 0;                                                                                                                     
    }
    for(b =2; b<=sqrt(a);b++){
        if(a % b == 0)
            printf("not prime!\n");
        else
            printf("it's prime!\n");
    }
    }
    return 0;
}

خطای کامپایلر:
/usr/bin/ld: /tmp/ccw7HJgQ.o: in function `main':
a.c:(.text+0xd7): undefined reference to `sqrt'

با کامند های زیادی کامپایل کردم اما ارور میداد!! تویه stackowerflow  نوشته بود آخر کامندت یدونه  lm-  اضافه کن؛ متاسفانه اونم ارور داد!
خیلی جالبه این کتابخانه وجود داره در  /usr/include اما نمیتونم استفاده کنم!
حتی داکیومنت خود کتابخونه رو هم خوندم یه جاش نوشته بود سازگار با استاندارد ۹۹ و من هم با استاندارد ۹۹ کامپایل کردم که ارور داد!!!
چه کنم؟؟
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: 🇬🇧بریتانیای کبیر🇬🇧 در 13 مهر 1402، 02:04 ب‌ظ
خطاش خطای الحاقگره و باید با lm- درست شه. تو چطور کامپایل کردی؟
برای FLAG هم از define استفاده کن.
gcc -lc -lm main.c
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 13 مهر 1402، 02:22 ب‌ظ
خروجی کامندی که بهم دادی  البته به جای اون  main.c فایل خودم رو قرار دادم
/usr/bin/ld: /tmp/cc7eJct0.o: in function `main':
a.c:(.text+0xd7): undefined reference to `sqrt'
collect2: error: ld returned 1 exit status


هرجور که فکر کنی کامپایل کردم!! ممکنه من کتابخانه  libm  رو نداشته باشم؟؟
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: esmaeelE در 13 مهر 1402، 04:07 ب‌ظ
نسیه اطلاعات دادید اینطوری به پاسخ نمی‌رسید.
دستور کامپایل را قرار ندادید.
محتویات نشانی که گفتید اونجا math.h هست را ارسال نکردید.

جدا از اینا فکر می‌کنم دستور کامپایل را اشتباه وارد کردید.
gcc run.c -lm
برای من خروجی دستور زیر برای پیدا کردن کتابخانهٔ math اینه
$ find / -name "libm.*" 2>/dev/null
/usr/lib/i386-linux-gnu/libm.so.6
/usr/lib/x86_64-linux-gnu/libm.so.6
/usr/lib/x86_64-linux-gnu/libm.so
/usr/lib/x86_64-linux-gnu/libm.a

این دستور هم نشون می‌ده که کتابخانه‌ای که در سیستم پیدا کردیم gcc می‌تونه باهاش کارکنه

$ gcc -print-search-dirs | grep /usr/lib/x86_64-linux-gnu/ --color

اگه خروجی داشته باشه gcc می‌تونه با پرچم lm- کارکنه.

حالا اگه برای شما اینطوری نیست باید بیشتر بررسی کرد.

عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 13 مهر 1402، 04:45 ب‌ظ
نقل‌قول

محتویات نشانی که گفتید اونجا math.h هست را ارسال نکردید.
چرا کردم!!
مثل اینکه حق با شماست  فکر کنم اشتاباه کامپایل میکردم الان برنامه اجرا شد.
من با دستورات زیر کامپایل کردم:
gcc -lm main.c
gcc -std=c99 -lm main.c
gcc -lm main.c -std=c99

اما هروقت میخوام با کتابخانه curses کار کنم  فرقی نداره که آپشن  lcurses-  رو کجای کامند قرار بدم! واقعا عجیبه  ???
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: alend در 14 مهر 1402، 01:58 ب‌ظ
من ترجیح می دم تنظیمات کاپایلر را واگذار کنم به cmake
cmake_minimum_required(VERSION 3.26)
project(test_c C)

set(CMAKE_C_STANDARD 17)

add_executable(test_c main.c)
target_link_libraries(test_c m)

جالب اینه اگر کد را C++ در نظر بگیرید به هیچ وجه پیام خطا نمی گیرید.
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: learner:~$ در 14 مهر 1402، 04:18 ب‌ظ
من ترجیح می دم تنظیمات کاپایلر را واگذار کنم به cmake
cmake_minimum_required(VERSION 3.26)
project(test_c C)

set(CMAKE_C_STANDARD 17)

add_executable(test_c main.c)
target_link_libraries(test_c m)

جالب اینه اگر کد را C++ در نظر بگیرید به هیچ وجه پیام خطا نمی گیرید.
دروغ چرا من زیادی آشنایی با cmake  ندارم  :P ولی باید یکم تحقیق کنم.
خب قطعه کدی که دادید چیکار میکنه؟
دقیقا!!! من برای کتابخانه conio  به همین مشکل دچار شدم!!! برای زبان سی نتونستم استفاده کنم اما برای سی پلاس پلاس تونستم!!!! خیلی جالبه که gcc از کتابخانه  conio  در سی پلاس پلاس  پشتیبانی میکنه.اما از همین کتابخانه در زبان سی پشتیبانی نمیکنه!به جاش مجبور شدم از ncurses و  curses  استفاده کنم  ???
عنوان: پاسخ : چند پرسش برنامه نویسی
ارسال شده توسط: alend در 15 مهر 1402، 06:29 ق‌ظ
اول یک فایل به نام CMakeLists.txt ایجاد کن. بعد اون متون رو بزار داخلش.

بعد بزن
cmake .
make

این ساده ترین حالت هست، طبق ویکیپدیا cmake این محیط های ساخت رو می توند بسازد:
نقل‌قول
Make, Qt Creator, Ninja, Android Studio, Apple's Xcode, and Microsoft Visual Studio