سؤال

لقد قمت بتجميع الكود الخاص بي بنجاح، لكنه يقول هذا:

Note: You can also run your application by typing 'run' followed by any command line arguments.
Starting application without args...
Checking Libraries...
Copying files...
Processing Files...
Compiling...
Failed to zip binaries!

Application Exited.

أريد أن يطلب الكود الخاص بي من المستخدم إدخال ثلاثة أرقام، مع وجود مسافات بينهما، وضربها، لذا هذا هو الكود الخاص بي:

#include <stdio.h>
#include <stdlib.h>

int mult( int x, int y, int z) {
    return x * y * z;

int main()
    {
    int x;
    int y;
    int z;

    printf("Input two integers to be multiplied: ");
    scanf("%d", &x);
    scanf("%d", &y);
    scanf("%d", &z);
    printf("The product of the three numbers is %d\n", mult( x, y, z) );
    getchar();
}

int mult (int x, int y, int z)
{
return x * y * z;
    }
}        

انا استخدم compilr.com كمنصة التطوير الخاصة بي.

هل كانت مفيدة؟

المحلول

يحتوي الرمز الخاص بك على أخطاء في بناء الجملة. mult تم تعريفه مرتين، وهناك مشاكل مع الأقواس.بالإضافة إلى ذلك، إذا كنت تستخدم C89، main يجب أن ترجع قيمة.

نصائح أخرى

إلى جانب أن رمزك غريب إلى حد ما، وربما خاطئ، يبدو لي أن الخطأ الخاص بك يشير إلى مشكلة رابط: http://ideone.com/ibotp

في الواقع، الرمز الخاص بك ببساطة لن تربط.تعريفك الأول ل mult يفتقد هدفين في النهاية.يبدو أن تعريفك الثاني (غير الضروري) يحتوي على قوس إضافي يتبعه.على هذا النحو، يبدو أن هناك طريقة متعددة كبيرة واحدة ولا يوجد طريقة رئيسية على الإطلاق، مما يؤدي إلى خطأ الرابط.الرئيسي (حتى لو لم يتم ضبطه داخل الأقواس) لا يُرجع أي شيء أيضًا.

من المثير للدهشة أن Compilr لا يبدو أنه يُرجع أي أخطاء فيما يتعلق بهذا.(أو لم تظهر لنا) ومع ذلك، ونتيجة لفشل الارتباط، لا توجد ثنائيات.لذا، عند محاولة ضغطها، يفشل الضغط الفعلي مع ظهور رسالة الخطأ.

أود أن أوصيك بشدة باختيار مترجم/IDE لائق لتجميع التعليمات البرمجية الخاصة بك بنفسك قبل إرسالها إلى أي مكان آخر.تأكد من أنه يعمل بالفعل على نظامك المحلي أولاً.إذا لم يُرجع موقع compilr.com أي معلومات خطأ فعلية في بناء الجملة/المترجم/الرابط، فهو عديم الفائدة بالنسبة لك.(لاحظ أنني لست على دراية بالنظام، لذلك قد يوفره لك بالفعل.إذا كان الأمر كذلك، معرفة كيف يعمل هذا).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top