私はCの初心者です。私にはこのエラーを修正する方法を教えてください。cポインタエラー、現在時刻を取得
#include <Windows.h>
#include <stdio.h>
int *getDate()
{
SYSTEMTIME str_t;
GetSystemTime(&str_t);
int tab[3];
tab[0]=str_t.wDay;
tab[1]=str_t.wMonth;
tab[2]=str_t.wYear;
return tab;
}
struct node
{
int *date= getDate();
};
void main()
{
struct node n1 = (struct node*)malloc(sizeof(struct node));
int *tab = n1->date;
printf("Jour : %d , Mois : %d , Anne : %d",tab[0],tab[1],tab[2]);
}
エラーがある:互換性のないポインタ型からの復帰。
PS:私は
はあなたに感謝のgetDate同じエラーのリターンに復帰&タブを試してみました。
Amar、あなたは[tag:C++]を使用していると思われますが、これは100%確かに[tag:c]コードですか?この 'struct node {int * date = getDate();};'が無効で 'struct node n1 =(struct node *)malloc()'もまた割り当ての左側が異なる'malloc()'をタイプします。 –
'node-> date'は' n1-> date'でなければなりません – BackDoorNoBaby
'node'のコンストラクタを呼び出すことは決してないので、' date'フィールドは決して設定されません。 – BackDoorNoBaby