Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
"type" : rzutowanie na najwyższym poziomie jest ignorowane
Uwagi
Kompilator wykrył rzutowanie do typu r-value, który jest kwalifikowany z lotnym lub rzutowania typu r-value na jakiś typ kwalifikowany z lotnymi. Zgodnie ze standardem C (6.5.3) właściwości skojarzone z kwalifikowanymi typami mają znaczenie tylko dla wyrażeń l-value.
Example
Poniższy przykład generuje C4197:
// C4197.cpp
// compile with: /W3
#include <stdio.h>
#include <signal.h>
#include <stdlib.h>
void sigproc(int);
struct S
{
int i;
} s;
int main()
{
signal(SIGINT, sigproc);
s.i = 1;
S *pS = &s;
for ( ; (volatile int)pS->i ; ) // C4197
break;
// for ( ; *(volatile int *)&pS->i ; ) // OK
// break;
}
void sigproc(int) // ctrl-C
{
signal(SIGINT, sigproc);
s.i = 0;
}