Microsoft hesabıyla oturum açın
Oturum açın veya hesap oluşturun.
Merhaba,
Farklı bir hesap seçin.
Birden çok hesabınız var
Oturum açmak istediğiniz hesabı seçin.

Belirtiler

_Sntscanf_s işlevi çağıran bir uygulama çalıştırdığınızda, çağrı EOF(-1) değer döndürmelidir. Ancak, uygulama Windows 10 kuruluş 2015 LTSB üzerinde çalıştırdığınızda, eklenen null karakteri göz ardı edilir. Bu numFields alan 1EOF (-1) değeri yerine hatalı bir değer almak neden olur.

Örneğin, aşağıdaki Visual C++ uygulamasında bu sorun oluşur:

#include "stdafx.h"
#include "string.h"
#include "stdlib.h"

int main()
{
    TCHAR szBuff[256];
    double temp = 0;
    wcscpy_s(szBuff, L"77777777");

    // this should force the _sntscanf_s to return an EOF (-1) value
    szBuff[0] = '\0';

    int numFields = _sntscanf_s(szBuff, _countof(szBuff), _T("%lf"), &temp);
    if (numFields == EOF)
    {
        printf("Correct Behavior!!!\r\n");
    }
    else
    {
        printf("BUG: _sntscanf_s failed to return EOF!!!\r\n");
    }
    return 0;
}

Neden

Windows 10 kuruluş 2015 LTSB içinde bulunan Ucrtbase.dll dosyasına common_vsscanf işlevinde bilinen bir sorun nedeniyle bu sorun oluşur. Bu sorun tüm scanf ailesi işlevlerini etkiler:

  • _vsscanf_l

  • vsscanf

  • _sscanf_l

  • sscanf

  • _vsscanf_s_l

  • vsscanf_s

  • _sscanfs_l

  • sscanf_s

  • _snscanf_l

  • _snscanf_s

  • _snscanf_s_l

  • _snscanf_s

  • _vswscanf_l

  • vswscanf

  • _swscanf_l

  • swscanf

  • _vswscanf_s_l

  • vswscanf_s

  • _wsscanfs_l

  • swscanf_s

  • _snwscanf_l

  • _snwscanf_s

  • _snwscanf_s_l

  • _snwscanf_s

Çözüm

Bu sorunu gidermek için yükleme bakımı güncelleştirmek 8 Mayıs 2018 — KB4103716 (OS yapı 10240.17861).

Başvurular

Harika C çalışma zamanı (CRT) yeniden düzenleme

Evrensel CRT Tanıtımı

Daha fazla yardıma mı ihtiyacınız var?

Yeteneklerinizi geliştirin
Eğitimleri keşfedin
Yeni özellikleri ilk olarak siz edinin
Microsoft Insider 'a katılın

Bu bilgi yararlı oldu mu?

Dil kalitesinden ne kadar memnunsunuz?
Deneyiminizi ne etkiledi?

Geri bildiriminiz için teşekkürler!

×