Dans some of its API function Microsoft utilise le format "multi-chaîne" pour spécifier une liste de chaînes. Si je comprends bien, une chaîne multiple est un tampon à terminaison nulle de chaînes à terminaison nulle concaténées. Mais cela peut aussi être interprété comme une liste de chaînes, séparées par un caractère nul et terminées par deux caractères nuls.Détails sur le format multi-chaîne Microsoft
Voici un exemple. Une liste composée des éléments suivants:
Devient:
apple\0banana\0orange\0\0
Mais maintenant, je me demande:
Comment une liste vide être représenté?
Serait-il:
\0
Ou:
\0\0
je ne ai pas trouvé une documentation précise qui clarifie cela. Une idée?
La dernière chaîne dans une « liste de chaînes » est la chaîne de longueur zéro. Un simple \ 0 est alors suffisant pour se terminer. –
Vous vous demandez comment cela fonctionne avec UTF-8 et ses caractères multi-octets? – Piskvor
L'API Windows ne supporte pas UTF-8 :-(Mais si c'était le cas, rien ne changerait car les caractères multi-octets UTF-8 n'incluent jamais 0. – dan04