Aracılığıyla paylaş


Standart C İşlevleri

Standart C çalışma zamanı kitaplıkları, Unicode ile kullanılabilen dize işlevlerinin hem Unicode UTF-16 (geniş karakter) sürümlerini hem de (SBCSs) tek baytlı karakter kümelerindeki karakterlerle kullanılabilen dize işlevlerinin bayt odaklı sürümlerini içerir. WCHAR Unicode veri türü ANSI C'deki wchar_t veri türüyle uyumludur ve Unicode dize işlevlerine erişime izin verir. İşlevlerin Unicode sürümleri "wcs" (veya bazen "_wcs") harfleriyle başlar. Kod sayfaları için kullanılan CHAR veri türü, karakter dizesi işlevlerine erişime izin vermek için ANSI C'deki karakter veri türü char ile uyumludur. İşlevlerin karakter sürümleri "str" harfleriyle başlar. "_mbs" harfleriyle başlayan (DBCSs) çift baytlık karakter kümeleri için özel sürümler de vardır.

Standart C çalışma zamanı kitaplıkları, tüm standart C dizesi işlevleri için genel işlevler içerir. "_tcs" ile başlar ve Tchar.h üst bilgi dosyasında listelenir. Bu işlevler genel TCHAR veri türünü kullanır.

Bir uygulamanın, genel işlevleri kullanmak ve Unicode için derlemek için aşağıdaki satırları eklemesi gerekir.

#define _UNICODE

#include <tchar.h>
#include <wchar.h>

Hem Tchar.h hem de Wchar.h dosyalarının gerekli olduğunu ve _UNICODE değişkeninde baştaki alt çizginin de gerekli olduğunu unutmayın. Bu sıfat standart C kitaplığına özgüdür. Alt çizgi olmadan işlenen "UNICODE", Microsoft Windows çalışma zamanlarına yöneliktir.

wcstombs ve mbstowcs işlevleri, bazı sınırlamalarla standart C kitaplığı tarafından desteklenen karakter kümesinden Unicode ve geri dönüşe dönüştürülebilir. Dizeleri Unicode'a ve Unicode'dan çevirme hakkında daha fazla bilgi için bkz. Dize Türleri Arasında Çeviri.

Tchar.h dosyasında tanımlanan printf işlevi, Strsafe.h yazdırma işlevleriyle aynı biçim belirtimlerini destekler, örneğin StringCbPrintf. Benzer şekilde, Tchar.h bir wprintf işlevi tanımlar ve bu işlevde biçim dizesinin kendisi bir Unicode dizesidir.

Dikkat

Zayıf arabellek işleme, arabellek taşmalarını içeren birçok güvenlik sorununa dahil edilir. Bkz. strsafe.h başvuru . Strsafe.h'de tanımlanan işlevler, kodunuzda uygun arabellek işleme için ek işleme sağlar. Yerleşik C/C++ karşılıklarının yanı sıra belirli Microsoft Windows uygulamalarını da değiştirmeleri amaçlanmıştır. Daha fazla bilgi için bkz. Güvenlik Konuları: Uluslararası Özellikler.

 

Windows API 'de Unicode