אנגליתצרפתיתספרדי

Ad


סמל OnWorks

cpphs - מקוון בענן

הפעל cpphs בספק אירוח חינמי של OnWorks על Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

זוהי הפקודה cpphs שניתן להפעיל בספק האירוח החינמי של OnWorks באמצעות אחת מתחנות העבודה המקוונות המרובות שלנו, כגון Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

תָכְנִית:

שֵׁם


cpphs - מעבד פרה-מעבד דמוי cpp-a ליברלי עבור Haskell

תַקצִיר


cpphs [שם קובץ|אוֹפְּצִיָה] ...

תיאור


cpphs הוא יישום מחדש ליברלי של cpp (1), ה-C pre-processor, בתוך ועבור
האסקל.

למה להטמיע מחדש cpp? בצדק או שלא, ה-Pre-processor C נמצא בשימוש נרחב ב- Haskell
קוד מקור. זה מאפשר קומפילציה מותנית עבור מהדרים שונים, שונים
גרסאות של אותו מהדר ופלטפורמות מערכת הפעלה שונות. משתמשים בו גם מדי פעם
לשפת המאקרו שלה, שיכולה לאפשר צורות מסוימות של פרטים ספציפיים לפלטפורמה-
מילוי, כגון יצירת ה-boilerplate המייגע של הגדרות מופעים ו-FFI
הצהרות. עם זאת, יש שתי בעיות עם cpp, מלבד האסתטיקה הברורה
יחידות:

עבור כמה מערכות Haskell, במיוחד Hugs ב-Windows, CPP אמיתי אינו זמין על ידי
ברירת המחדל.

אפילו עבור מערכות Haskell האחרות, ה-cpp הנפוץ שסופק על ידי סדרת gcc 3.x
משתנה בעדינות בדרכים שאינן תואמות את התחביר של Haskell. היה
תמיד היו בעיות עם, למשל, פערי מחרוזת ודמויות ראשוניות ב
מזהים. הבעיות הללו רק ילכו ויחמירו.

לכן, זה נראה נכון לנסות לספק חלופה ל-cpp, שניהם תואמים יותר
Haskell, ובעצמו נכתב בהאסקל כדי שניתן יהיה להפיץ אותו עם מהדרים.

cpphs הוא די מלא תכונה, ותואם ל- -מָסוֹרתִי סגנון cpp.
יש לו שני מצבים:

הידור מותנה בלבד (--נומאקרו),

והרחבת מאקרו מלאה (ברירת מחדל).

In --נומאקרו מצב, cpphs מבצע רק פעולות קומפילציה מותנות, כלומר #includeשל,
#אםשל, ו #ifdefמעובדים לפי הגדרות החלפת טקסט (הן פקודות-
קו ופנימי), אך לא מתבצעת הרחבת מאקרו עם פרמטרים. במלואו
מצב תאימות (ברירת המחדל), החלפות טקסטואליות והרחבות מאקרו גם כן
מעובד בגוף שנותר של טקסט שאינו CPP.

תכונות עבודה:

#ifdef קומפילציה מותנית פשוטה

#אם השפה הבוליאנית המלאה של defined(), &&, ||, == וכו'.

#elif תנאים משורשרים

#define
הגדרות מקוונות (החלפות טקסט ופקודות מאקרו)

#undef ביטול הגדרות מקוון

#include
הכללת קובץ

#קַו הנחיות מספר קו

\n המשך קו בתוך כל # ההנחיות

/ ** / קטנטור אסימון בתוך הגדרת מאקרו

## קטנטור אסימון בסגנון ANSI

# מחרוזת אסימונים בסגנון ANSI

__קוֹבֶץ__
תחליף טקסט מיוחד עבור הודעות שגיאה עשה זאת בעצמך

__קַו__
תחליף טקסט מיוחד עבור הודעות שגיאה עשה זאת בעצמך

__תַאֲרִיך__
החלפת טקסט מיוחדת

__זְמַן__
החלפת טקסט מיוחדת

הרחבת המאקרו היא רקורסיבית. הגדרה מחדש של שם מאקרו אינה מייצרת אזהרה.
ניתן להגדיר מאקרו בשורת הפקודה עם -D בדיוק כמו החלפות טקסטואליות. מאקרו
מותר לשמות להיות מזהי Haskell, למשל עם ראשי ` ו-backtick ´
תווים, שהוא מעט יותר רופף מאשר ב-C, אך ייתכן שהם עדיין לא כוללים אופרטור
סמלים.

מספור השורות בפלט נשמר כך שכל מעבד מאוחר יותר יוכל לתת
הודעות שגיאה משמעותיות. כאשר קובץ הוא #include'ד, cpphs מוסיף #קַו הנחיות עבור
אותה סיבה. המספור צריך להיות נכון גם בנוכחות המשך שורה.
אם אתה לא רוצה #קַו הנחיות בפלט הסופי, השתמש ב- --אין קו אוֹפְּצִיָה.

כל שגיאת תחביר בהנחיות cpp נותנת הודעה ל-stderr ומפסיקה את התוכנית.
אי מציאת קובץ #include'd מייצרת אזהרה ל-stderr, אך העיבוד נמשך.

אתה יכול לתת כל מספר של שמות קבצים בשורת הפקודה. התוצאות נכתבות לפי
פלט סטנדרטי.

-DSYM הגדר תחליף טקסטואלי (ערך ברירת המחדל הוא 1)

-Dsym=val
להגדיר תחליף טקסטואלי עם ערך מסוים

-Iנתיב הוסף ספריה לנתיב החיפוש עבור #include's

-Oפילה ציין קובץ לפלט (ברירת המחדל היא stdout)

--נומאקרו
רק לעבד את #ifdef's ו-#include's,
אל תרחיב פקודות מאקרו

--אין קו
הסר גללי #שורה מהפלט

--לְהִתְפַּשֵׁט
המרת הערות בסגנון C לרווח לבן, גם בחוץ
הנחיות cpp

--חשיש
לזהות את אופרטור המחרוזת ANSI #, ו-## עבור
קטנטור אסימון, בתוך פקודות מאקרו

--טֶקסט התייחס לקלט כטקסט רגיל, לא לקוד Haskell

--מַעֲרָך
לשמר שורות חדשות בתוך הרחבות מאקרו

--לא מואר
להסיר הערות בסגנון קרוא וכתוב

--גִרְסָה
דווח על מספר גרסה של cpps והפסק

אין החלפות טקסטואליות המוגדרות כברירת מחדל. (ל-cpp רגיל יש בדרך כלל הגדרות
עבור מכונה, מערכת הפעלה וכו'. ניתן להוסיף את אלה בקלות לקוד המקור של cpphs אם תרצה.)
חיפוש נתיב החיפוש מתבצע לפי סדר ה- -I אפשרויות, פרט לכך שהספרייה של
קובץ קורא, ולאחר מכן את הספרייה הנוכחית, תמיד מחפשים קודם. שוב, אין
נתיב חיפוש ברירת מחדל (ושוב, ניתן לשנות זאת בקלות).

הבדלים מן CPP


באופן כללי, cpphs מבוסס על -מָסוֹרתִי התנהגות, לא ANSI C, ויש לו את
בעקבות ההבדלים העיקריים מה-cpp הסטנדרטי.

כללי

אל האני # שמציג כל הנחיית cpp חייבת להיות בעמודה הראשונה של שורה (אילו
ANSI מתיר רווח לבן לפני ה- # ).

יוצר את #קַו n "שם הקובץ"תחביר, לא ה # n "שם הקובץ"גרסה.

הערות C מוסרות רק מתוך הנחיות cpp. הם לא מופשטים מאחרים
טֶקסט. קחו למשל בחשבון שב-Haskell, כל הפעולות הבאות הן אופרטור חוקי
סמלים: /* */ * / * עם זאת, אתה יכול להפעיל את הסרת C-comment עם --לְהִתְפַּשֵׁט אוֹפְּצִיָה.

מאקרו שפה

מקבל / ** / להדבקת אסימון בהגדרת מאקרו. למרות זאת, /* */ (עם כל טקסט
בין ההערה פתיחה/סגור) מוסיף רווח לבן.

ה-ANSI ## מפעיל הדבקת אסימון זמין עם ה- --חשיש דֶגֶל. זה כדי להימנע
פירוש שגוי של כל אופרטור Haskell חוקי באותו שם.

מחליף פרמטר מאקרו פורמלי בפרמטר בפועל, אפילו בתוך מחרוזת (כפול או יחיד
מְצוּטָט). זוהי התנהגות מסורתית, לא נתמכת ב-ANSI.

מזהה את # אופרטור מחרוזת בהגדרת מאקרו רק אם אתה משתמש ב- --חשיש
אוֹפְּצִיָה. (זו תוספת של ANSI, נדרשת רק בגלל המחרוזת המצוטטת (לעיל).
אסור על ידי ANSI.)

שומר על רווח לבן בתוך הגדרת החלפה טקסטואלית בדיוק (מודולו newlines),
אבל חלל מוביל ונגרר מתבטל.

שומר על רווח לבן בתוך הגדרת מאקרו (ולאחריה) בדיוק (מודולו
newlines), אך חלל מוביל בוטל.

שומר על רווח לבן בתוך ארגומנטים של קריאת מאקרו בדיוק (כולל שורות חדשות), אך מוביל
וחלל נגרר מתבטל.

עם --מַעֲרָך אפשרות, המשך שורה בהחלפת טקסט או הגדרת מאקרו
נשמרים כמעברי שורה בקריאת המאקרו. (שימושי עבור קוד רגיש לפריסה ב
הסקל.)

השתמש ב-cpphs באינטרנט באמצעות שירותי onworks.net


שרתים ותחנות עבודה בחינם

הורד אפליקציות Windows & Linux

  • 1
    facetracknoir
    facetracknoir
    תוכנית מעקב ראש מודולרית כי
    תומך במספר עוקבי פנים, מסננים
    ופרוטוקולי משחק. בין הגששים
    הם SM FaceAPI, AIC Inertial Head
    עוקב ...
    הורד את facetracknoir
  • 2
    קוד QR של PHP
    קוד QR של PHP
    PHP QR Code הוא קוד פתוח (LGPL)
    ספרייה להפקת קוד QR,
    ברקוד דו מימדי. מבוסס על
    ספריית libqrencode C, מספקת API עבור
    יצירת סרגל קוד QR...
    הורד PHP QR Code
  • 3
    פריסיב
    פריסיב
    Freeciv הוא מבוסס תור חינמי
    משחק אסטרטגיה מרובה משתתפים, שבו כל אחד
    שחקן הופך למנהיג של א
    ציוויליזציה, נלחמת להשיג את
    המטרה הסופית: להיות...
    הורד את Freeciv
  • 4
    ארגז חול של קוקייה
    ארגז חול של קוקייה
    Cuckoo Sandbox משתמש ברכיבים כדי
    לפקח על ההתנהגות של תוכנות זדוניות ב-a
    סביבת ארגז חול; מבודד מה
    שאר המערכת. הוא מציע אוטומטי
    ניתוח או...
    הורד קוקייה חול
  • 5
    LMS-YouTube
    LMS-YouTube
    הפעל סרטון YouTube ב-LMS (העברה של
    Triode's to YouTbe API v3) זהו
    יישום שניתן גם לאחזר
    החל מ-
    https://sourceforge.net/projects/lms-y...
    הורד את LMS-YouTube
  • 6
    קרן מצגת Windows
    קרן מצגת Windows
    Windows Presentation Foundation (WPF)
    היא מסגרת ממשק משתמש לבניית Windows
    יישומי שולחן עבודה. WPF תומך ב-a
    מערך רחב של פיתוח אפליקציות
    מאפיינים...
    הורד את Windows Presentation Foundation
  • עוד »

פקודות לינוקס

Ad