BG MVC Model View Controller eğitim serisi yayında...

Ana sayfa > Programlama > C Programlama > C örnek kodlar > c_ornek00011

C örnek kodlar

Bir yapı (structure) içeriğini sıfırlama

Her bir elemanına teker teker değer atanmış bir yapı (structure) değişkenlerinin tamamını tek komutla sıfırlamak için memset() fonksiyonunu kullanabiliriz.


#include <stdio.h>
#include <string.h>

typedef struct {
  int id1;
  int id2;
  char cdizi[20];
} DataType;

DataType Data[5];

int main(void)
{
  int id1;

  Data[1].id1 = 9;
  Data[1].id2 = 11;
  strcpy(Data[1].cdizi, "Karakter dizisi01");

  Data[3].id1 = 15;
  Data[3].id2 = 38;
  strcpy(Data[3].cdizi, "Karakter dizisi02");

  printf("%d %d %s\n", Data[1].id1, Data[1].id2, Data[1].cdizi);
  printf("%d %d %s\n\n", Data[3].id1, Data[3].id2, Data[3].cdizi);

  for (id1=0; id1<5; id1++) {
       memset(&Data[id1], 0, sizeof(DataType));
  }

  printf("%d %d %s\n", Data[1].id1, Data[1].id2, Data[1].cdizi);
  printf("%d %d %s", Data[3].id1, Data[3].id2, Data[3].cdizi);

  return 0;
}

Yukarıdaki örnekte, program aşağıdaki satırları ekrana yazar:

9 11 Karakter dizisi01
15 38 Karakter dizisi02

0 0 
0 0