Sorğular 'c-preprocessor'

C və C ++ makrolarının proqramlaşdırma dilləri hazırlayıcı prosesi. Bu tag, Objective-C və ya C #-də #directives kimi eyni funksiyaları əldə edən və ya digər tərtibatçılar / dillər haqqında suallar üçün də istifadə edilə bilər.
32
Cavablar

#İnclude <filename> və #include "filename" arasında fərq nədir?

C və C ++ proqramlaşdırma dillərində, bucaqlı mötərizələrdən istifadə etməklə və quotes istifadə edərək, aşağıdakı kimi ifadələr arasında fərq nədir? #include <filename> #include "filename"
22 Avqustda təyin olundu. '08 4:40 'da
5
Cavablar

C preprocessor "linux" sözünü sabit "1" kimi təqdim edir?

GCC-də C preprocessor niyə Linux sözünü (kiçik hərfləri) daimi olaraq 1 şərh edir? test.c: #include <stdio.h> int ana (void) {int linux = 5; qayıt 0; } Nəticə $ gcc -E test.c (ön mərhələdən sonra dayandır ...
Oct 06 tarixini təyin etdi '13 saat 19:09 'da
11
Cavablar

Niyə makrolarda açıq-aydın mənasız do-while və if-else təlimatları istifadə edirsiniz?

Bir çox C / C ++ makrosunda loop isə mənasız bir şey kimi görünən şeylərə sarılan makro kodunu görürəm. Burada bəzi nümunələr var. # fefi FOO (X) do {f (X); g (x); } (0) # fefi (X) if (1) {f (X); g (x); } başqa nə edərkən görmürəm. Niyə b ...
30 Sentyabr müəyyən '08 saat 20:36 'də
2
Cavablar

Niyə müəllimim tərəfindən yazılmış bütün C faylları # ilə başlanır?

Niyə müəllimim tərəfindən yazılmış bütün C faylları # ilə başlanır? Bəzi qeydlərə baxıram və hər bir C mənbə faylı proqramın birinci satırında birdən başlayır. Sonra boşluqlar görünür və bir-birinə baxın ...
11 avqustda təyin olundu 17:17 da
3
Cavablar

Niyə #ifndef və #define C ++ başlıqlı fayllarda istifadə olunur?

Adi faylların başında bu kodu gördüm: #ifnd HEADERFILE_H #define HEADERFILE_H Və faylın sonunda #endif Bu məqsədi nədir?
31 oktyabr ayını təyin edin '09 saat 13:06 'da
4
Cavablar

C ++ və C birləşməsi - #ifdef __cplusplus necə işləyir?

Mən bir çox C kodu ilə bir layihə üzərində çalışıb, C ++ yazmağa başladım, yəni, köhnəlmiş kodu çevirmək üçün. C və C ++ ilə necə qarşılıqlı əlaqədə olduğumu bir az qarışdırıram. C kodunun extern "C" ilə örtülməsini başa düşürəm ...
24 sep qoydu . '10 saat 20:03 'da
3
Cavablar

C preprocessorunda Mac OS X, iOS, Linux və Windows-ni necə etibarlı şəkildə aşkar etmək olar?

Mac OS X, iOS, Linux, Windows-da tərtib olunmalı olan hər hansı cross-platform C / C ++ kodu varsa, mənim ön prosessor prosesi zamanı necə etibarlı şəkildə aşkar edə bilərəm?
07 may tarixində saat 11: 37-də təyin olunacaq
3
Cavablar

Önceden hazırlanmış makroyu smake vasitəsilə müəyyənləşdirin

Preekresessor dəyişənini cmake vasitəsilə necə müəyyən etmək olar? Ekvivalent kod #define foo olardı.
26 yanvar tarixini təyin etdi '12 saat 14:35 'da
6
Cavablar

GCC preprocessor dump müəyyən edir

Gcc / g ++ əmri xəttindən ön prosessorunu çıxarmaq üçün bir yol varmı? Mən __GNUC__, __STDC__ və s.
08 fevral '10 saat 10:40 'da
12
Cavablar

Cədəndə MIN və MAX

C-də MIN və MAX-lər hansı yerdədir? Onları mümkün qədər universal və təhlükəsiz şəkildə həyata keçirmək üçün ən yaxşı üsul nədir? (Əsas kompilyatorlar üçün uzantıları / inline derleyicileri istifadə etmək üstünlük təşkil edir.)
set 09 aug. '10 da 7:49
10
Cavablar

Visual Studio-da preprocessing sonra C / C + + mənbə faylını necə görə bilərsiniz?

Çox preprocessor direktivləri ilə bir qaynaq faylına sahibəm. Hazırlayıcı işlə məşğul olduqdan sonra göründüyü kimi görünə bilərəmmi?
10 Noyabrda təyin olundu '08 saat 10:11 'də
12
Cavablar

C #, debug çap üçün makroyu müəyyənləşdirir

DEBUG müəyyən edildikdə, məsələn, aşağıdakı pseudo-kod müəyyən edildikdə çap nizama salmaq üçün istifadə edilə biləcək bir makro yaratmaq üçün cəhd edin: # DEFUG DEBUG 1 # define debug_print (args ...) if (DEBUG) fprintf (stderr, args) makro?
29 oktyabr təyin etdi '09 da 19:17
12
Cavablar

Derleyici xəbərdarlığı "Faylın sonunda heç bir satırsonu yoxdur"

Bəzi C ++ tərtibçilərində aşağıdakı xəbərdarlığın səbəbi nədir? Faylın sonunda heç bir xətt yoxdur Niyə mənbə / başlıq faylının sonunda boş bir xətaya ehtiyacım var?
16 Sentyabrı təyin etdi '08 saat 04:38 'da
5
Cavablar

Dəyişən makroyu necə etmək (dəyişən arqumentlərin sayı)

C bir makro yazmaq istərdim, istənilən sayda parametrləri alır, müəyyən bir sayı deyil Məsələn: # define makro (X) something_complicated (hər hansı bir (X)) X hər hansı parametr sayıdır
25 mart 'da 5:08' də təyin olundu
38
Cavablar

C ++ makroları nə vaxt faydalıdır?

C preprocessor C ++ ictimaiyyətini haqlı olaraq qorxudur və qaçırır. Daxili funksiyalar, sabitlər və nümunələr adətən #define üçün təhlükəsiz və yaxşı bir alternativdir. Aşağıdakı makro: #define SUCCEEDED (hr) ((HRESULT) (hr)> = 0) no ...
18 Sentyabrda təyin olundu '08 saat 22:46 'da