_getc_nolock
, _getwc_nolock
Lit un caractère dans un flux sans verrouillage.
Syntaxe
int _getc_nolock(
FILE *stream
);
wint_t _getwc_nolock(
FILE *stream
);
Paramètres
stream
Flux d’entrée.
Valeur retournée
Consultez getc
et getwc
.
Notes
Ces fonctions sont identiques à getc
et getwc
, à ceci près qu’elles ne verrouillent pas le thread appelant. Elles peuvent être plus rapides, car elles n’entraînent pas de surcharge liée au verrouillage des autres threads. Utilisez ces fonctions uniquement dans les contextes thread-safe, tels que les applications à un seul thread ou lorsque la portée appelante gère déjà l'isolation des threads.
Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.
Mappages de routines de texte générique
Routine Tchar.h | _UNICODE et _MBCS non définis |
_MBCS défini |
_UNICODE défini |
---|---|---|---|
_gettc_nolock |
getc_nolock |
getc_nolock |
getwc_nolock |
Spécifications
Routine | En-tête requis |
---|---|
getc_nolock |
<stdio.h> |
getwc_nolock |
<stdio.h> ou <wchar.h> |
Pour plus d’informations sur la compatibilité, consultez Compatibility.
Exemple
// crt_getc_nolock.c
// Use getc to read a line from a file.
#include <stdio.h>
int main()
{
char buffer[81];
int i, ch;
FILE* fp;
// Read a single line from the file "crt_getc_nolock.txt".
fopen_s(&fp, "crt_getc_nolock.txt", "r");
if (!fp)
{
printf("Failed to open file crt_getc_nolock.txt.\n");
exit(1);
}
for (i = 0; (i < 80) && ((ch = getc(fp)) != EOF)
&& (ch != '\n'); i++)
{
buffer[i] = (char) ch;
}
// Terminate string with a null character
buffer[i] = '\0';
printf( "Input was: %s\n", buffer);
fclose(fp);
}
Entrée : crt_getc_nolock.txt
Line the first.
Line the second.
Sortie
Input was: Line the first.
Voir aussi
E/S de flux
fgetc
, fgetwc
_getch
, _getwch
putc
, putwc
ungetc
, ungetwc