&Quot nedir;#_GNU_SOURCE" define anlamına gelmez mi?
Bugün basename()
fonksiyonu kullanmak zorunda kaldım, ve man 3 basename
(here) bana garip bir mesaj verdi:
Notlar
İki farklı versiyonu var() basename-POSIXsürüm üzerinde nitelendirdiGNU sürümübir sonra alır
#define _GNU_SOURCE
#include <string.h>
#define _GNU_SOURCE
Bu ne demek, ben merak ediyorumkirletiyorGNU bir lisans ile yazıyorum kodu? Ya da sadece derleyici gibi bir şey derdi "Evet, biliyorum, bu fonksiyonların POSIX ayarlayın, böylece taşınabilir değildir, ama yine de kullanmak istiyorum".
Eğer öyleyse, neden insanlar farklı üstbilgiler, bazı karanlık ortam değişkeni bir işlev uygulama ya da diğer almak için tanımlamak yerine vermiyorsun?
Bir de beni deli ediyor: nasıl derleyici yürütülebilir ile bağlantı kurmaya yarayan biliyor mu? Bu kullanım #define
de mi?
Herkes bana bazı işaretçiler var mı?
CEVAP
_GNU_SOURCE
tanımlama vardır lisans ve her şeyi ile (olmayan)taşınabilir kod yazma ile ilgisi yok. _GNU_SOURCE
tanımladığınız alırsınız:
- standart olmayan GNU/Linux uzantı işlevleri çok erişim
- POSIX standardı (genellikle iyi bir neden, daha iyi alternatifleri ile değiştirilir, ya da özellikle eski uygulamalara bağlı olmak gibi) ihmal eden geleneksel işlevlerine erişim
- olamaz taşınabilir olması, ama bazen sistemin hayata geçirilmesi için gereken alt düzey işlevleri erişim
mount
,ifconfig
, gibi kamu hizmetleri vb. - GNU Millet fonksiyonları nasıl davranması gerektiği konusunda Standartları Kurulu ile aynı fikirde değil ve kendi şey yapmaya karar POSIX belirtilen fonksiyonları çok bozuk davranış.
Sürece farkındasınız bu şeyler, olmaması gerekir sorun tanımlama _GNU_SOURCE
fakat sen önlemek tanımlanması ve bunun yerine tanımlama _POSIX_C_SOURCE=200809L
_XOPEN_SOURCE=700
zaman mümkün sağlamak için programlarınızı taşınabilir.
Özellikle, _GNU_SOURCE
gelen şeyler gerekiraslayukarıdaki #2 ve 4.
&Quot;sıkı" kullanın; JavaScript, ...
Kabuk, " nedir; 2>&1 " dem...
C kaynağı, dış "C" etkisi ned...
Çeşitli "eylem Oluştur&; Visual S...
Düğüm nedir.' Bağlantı js, Expres...