سؤال

أنا باستخدام بيليس ج.عندما أقوم بتجميع هذا الرمز:

#include <windows.h>
#include <stdio.h>

void main(void)
{
   printf("Hello World");
}

أحصل على هذا الخطأ:

D:\Program Files\PellesC\Include\Win\basetsd.h(53): error #2001: Syntax error: expected ';' but found 'INT64'.
D:\Program Files\PellesC\Include\Win\basetsd.h(53): warning #2099: Missing type specifier; assuming 'int'.
D:\Program Files\PellesC\Include\Win\basetsd.h(57): error #2120: Redeclaration of '__int64', previously declared at D:\Program Files\PellesC\Include\Win\basetsd.h(53); expected 'int' but found 'unsigned int'.
D:\Program Files\PellesC\Include\Win\basetsd.h(57): error #2001: Syntax error: expected ';' but found 'UINT64'.
D:\Program Files\PellesC\Include\Win\basetsd.h(57): warning #2099: Missing type specifier; assuming 'int'.
D:\Program Files\PellesC\Include\Win\winnt.h(558): fatal error #1014: #error: "No target architecture".

شكرا لمساعدتكم.

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

المحلول

من أجل استخدام windows.h في PellesC عليك أن تذهب إلى:

  • مشروع - > خيارات المشروع - > مترجم
  • تحقق:تمكين ملحقات مايكروسوفت

نصائح أخرى

أنت في عداد المفقودين بعض الأجيال الأسترالية التي تحدد المحامرة الأخرى (E.G. Visual Studio) دائما.أنها توفر معلومات أساسية حول بنية المعالج، إصدار OS، إصدار SDK، إلخ.

ربما يكون من الأفضل البحث عن وثائق Microsoft حول ما يعرفه وحدات الماكرات التي يحددها برنامج التحويل البرمجي نفسه.

هذا الصفحة يمكن أن يكون نقطة انطلاق جيدة.

  1. تهيئة البرنامج باستخدام int main(void) و لا void main(void)
  2. كنت في عداد المفقودين بيان عودتك من return(0); فقط قبل قوس الماضي الخاص بك.يجب عليك تضمين هذا أو ستحصل على خطأ في بناء الجملة لأن برنامجك لا يعرف متى يتوقف عن التشغيل.

ثم قم بما يلي

  1. من شريط القائمة المنسدلة حدد Project ثم قم بالتمرير لأسفل وحدد ' خيارات المشروع.
  2. حدد Compiler علامة التبويب وتأكد من أن Calling conv: مربع لديه _cdecl مختارة.
  3. انقر على linker علامة التبويب وتأكد من أنه في subsystem مربع تم تعيين النوع إلى Console.

محاولة بناء عليه مرة أخرى ونرى ما سيحدث!

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