GoGPT Best VPN GoSearch

ไอคอน Fav ของ OnWorks

shtool-scpp - ออนไลน์ใน Cloud

เรียกใช้ shtool-scpp ในผู้ให้บริการโฮสต์ฟรีของ OnWorks ผ่าน Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

นี่คือคำสั่ง shtool-scpp ที่สามารถเรียกใช้ในผู้ให้บริการโฮสติ้งฟรีของ OnWorks โดยใช้หนึ่งในเวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

โครงการ:

ชื่อ


shtool-scpp - ไฟล์ซอร์ส GNU shtool C ตัวประมวลผลล่วงหน้า

เรื่องย่อ


สตูล สพป [-v|--รายละเอียด] [-p|--อนุรักษ์] [-f|--กรอง กรอง] [-o|--เอาท์พุท ออฟไทล์]
[-t|--แม่แบบ ไฟล์] [-M|--เครื่องหมาย เครื่องหมาย] [-D|--กำหนด ชื่อ] [-C|--ระดับ CNAME] ไฟล์ [ไฟล์
... ]

DESCRIPTION


คำสั่งนี้เป็นตัวประมวลผลล่วงหน้าไฟล์ต้นฉบับ ANSI C เพิ่มเติมสำหรับการแชร์ ซีพี(1) รหัส
เซ็กเมนต์ ตัวแปรภายใน และฟังก์ชันภายใน ความตั้งใจนี้มาจาก
การเขียนไลบรารีใน ANSI C ไฟล์ส่วนหัวภายในที่ใช้ร่วมกันโดยทั่วไปมักใช้สำหรับ
การแบ่งปันข้อมูลระหว่างไฟล์ต้นทางของไลบรารี

การดำเนินการคือการแยกวิเคราะห์โครงสร้างพิเศษใน ไฟล์s สร้างบางสิ่งจากสิ่งเหล่านี้
สร้างและใส่ไว้ที่ตำแหน่ง เครื่องหมาย in ไฟล์ โดยเขียนผลลัพธ์ไปที่ ออฟไทล์.
นอกจากนี้ ไฟล์ไม่เคยสัมผัสหรือดัดแปลง แทนที่โครงสร้างจะถูกลบออก
ภายหลังโดย ซีพี(1) ขั้นตอนของกระบวนการสร้าง ข้อกำหนดเบื้องต้นเพียงอย่างเดียวคือทุก ไฟล์
มี ``"#include ""ออฟไทล์"""'' ที่ด้านบน.

คำสั่งนี้มีคุณลักษณะดังต่อไปนี้: อันดับแรก หลีกเลี่ยงมลพิษเนมสเปซและ
ลดความพยายามในการสร้างต้นแบบสำหรับสัญลักษณ์ภายในโดยการจดจำฟังก์ชันและตัวแปร
ซึ่งถูกกำหนดด้วยตัวระบุคลาสการจัดเก็บ ``CNAME''. ตัวอย่างเช่น if CNAME is
``ฝึกงาน'' ฟังก์ชัน ``" ฝึกงานเป็นโมฆะ *foobar (int quux)"'' ในหนึ่งใน ไฟล์s คือ
แปลเป็นทั้ง ``"#define foobar __foobar"'' และ ``"extern void *foobar(int
quux);"'' ใน ออฟไทล์. นอกจากนี้ทั่วโลก ``"#define" CNAME "/**/"'' ถูกสร้างขึ้นใน .ด้วย
ออฟไทล์ เพื่อให้คอมไพเลอร์ละเว้นตัวระบุคลาสหน่วยเก็บข้อมูลเพิ่มเติมนี้อย่างเงียบๆ

ประการที่สอง ไฟล์ต้นฉบับของไลบรารีมักต้องการแชร์ "typedef", "#define" เป็นต้น มากกว่า
ขอบเขตไฟล์ต้นทาง เพื่อให้บรรลุสิ่งนี้สามารถวางสิ่งนี้ด้วยตนเองลงใน
ไฟล์ หรือใช้คุณสมบัติที่สองของ สพป: รหัสทั้งหมดใน ไฟล์ห่อหุ้มด้วย ``"#if "ชื่อ
... "#endif"'' ถูกคัดลอกไปยัง .โดยอัตโนมัติ ออฟไทล์. นอกจากนี้ทั่วโลก ``"#define" ชื่อ
0'' ยังถูกสร้างขึ้นใน ออฟไทล์ เพื่อให้คอมไพเลอร์ข้ามส่วนนี้ไปอย่างเงียบๆ (เพราะเป็น
พบแล้วในส่วนหัว)

OPTIONS


มีตัวเลือกบรรทัดคำสั่งต่อไปนี้

-v, --รายละเอียด
แสดงข้อมูลการประมวลผลบางส่วน

-p, --อนุรักษ์
ผลไม้กวน ออฟไทล์ ไม่ขึ้นกับบรรทัด ``#line'' ที่สร้างขึ้น สิ่งนี้มีประโยชน์สำหรับ
Makefiles ถ้าเนื้อหาที่แท้จริงของ ออฟไทล์ จะไม่เปลี่ยน มีแต่เบอร์ไลน์ ค่าเริ่มต้นคือ
เพื่อเขียนทับ

-f, --กรอง กรอง
ใช้การประมวลผลล่วงหน้าอย่างน้อยหนึ่งรายการ ความกระหายน้ำ(1) กรอง คำสั่ง (ปกติจะเป็นประเภท
``"s/.../.../"'') ให้กับไฟล์อินพุตแต่ละไฟล์ก่อนที่จะแยกวิเคราะห์อินพุต ตัวเลือกนี้สามารถ
เกิดขึ้นหลายครั้ง

-o, --เอาท์พุท ออฟไทล์
ชื่อไฟล์เอาต์พุต ค่าเริ่มต้นคือ "lib.h"

-t, --แม่แบบ ไฟล์
ชื่อไฟล์เทมเพลต ค่าเริ่มต้นคือ "lib.h.in"

-M, --เครื่องหมาย เครื่องหมาย
ทำเครื่องหมายเพื่อแทนที่ด้วยโครงสร้างที่สร้างขึ้น ค่าเริ่มต้นคือ "%%MARK%%"

-D, --กำหนด ชื่อ
ช่วยแก้ไขข้อบกพร่องฉันหน่อย. ค่าเริ่มต้นคือ "cpp"

-C, --ระดับ CNAME
ช่วยแก้ไขข้อบกพร่องฉันหน่อย. ค่าเริ่มต้นคือ "ฝึกงาน"

ตัวอย่าง


#เมคไฟล์
SRCS=foo_bar.c foo_quux.c
foo_p.h: foo_p.h.ใน
shtool scpp -o foo_p.h -t foo_p.h.in \
-M %%MARK%% -D cpp -C ฝึกงาน $(SRCS)

/* foo_p.h.in */
#ifndef FOO_P_H
#กำหนด FOO_P_H
%%เครื่องหมาย%%
#endif /* FOO_P_H */

/*foo_bar.c */
#รวม "foo_p.h"
#ถ้าcpp
#กำหนด OURS_INIT 4711
#เอนดิฟ
นักศึกษาฝึกงานของเรา;
คงที่ int myone = 0815;
แถบ int ฝึกงาน (เป็นโมฆะ)
{
ของเรา += myone;
}

/*foo_quux.c */
#รวม "foo_p.h"
int main(int argc, ถ่าน *argv[])
{
int ฉัน;
ของเรา = OURS_INIT
สำหรับ (i = 0; i < 10; i++) {
บาร์();
printf("ของเราตอนนี้ %d\n", ของเรา);
}
0 กลับ;
}

ประวัติ


การขอ GNU สตูล สพป คำสั่งเดิมเขียนโดย Ralf S. Engelschall
<[ป้องกันอีเมล]> ในปี 1999 สำหรับ GNU สตูล. มันได้รับแจ้งจากความต้องการที่จะมี
โรงงานแปรรูปใน GNU PTH โครงการ

ใช้ shtool-scpp ออนไลน์โดยใช้บริการ onworks.net


เซิร์ฟเวอร์และเวิร์กสเตชันฟรี

ดาวน์โหลดแอพ Windows & Linux

คำสั่ง Linux

Ad




×
โฆษณา
❤️ช้อป จอง หรือซื้อที่นี่โดยไม่เสียค่าใช้จ่าย ช่วยให้บริการต่างๆ ฟรี