Compilerwarnung (Stufe 1) C4744

'var' hat einen unterschiedlichen Typ in 'Datei1' und 'Datei2': 'Typ1' und 'Typ2'

Eine externe Variable, die in zwei Dateien referenziert oder definiert wurde, hat in diesen Dateien verschiedene Typen. Zur Behebung des Problems gleichen Sie die Typdefinitionen an oder ändern den Variablennamen in einer der Dateien.

C4744 wird nur ausgegeben, wenn Dateien mit /GL kompiliert werden. Weitere Informationen finden Sie unter /GL (Optimierung des ganzen Programms).

Tipp

C4744 tritt normalerweise in C-Dateien (nicht C++) auf, da in C++ ein Variablenname mit Typinformationen ergänzt wird. Wenn das folgende Beispiel als C++ kompiliert wird, wird der Linkerfehler LNK2019 ausgegeben.

Beispiel

Dieses Beispiel enthält die erste Definition.

// C4744.c
// compile with: /c /GL
int global;

Im folgenden Beispiel wird C4744 generiert.

// C4744b.c
// compile with: C4744.c /GL /W1
// C4744 expected
#include <stdio.h>

extern unsigned global;

main() 
{
    printf_s("%d\n", global);
}