need help to blink simple pattern with shift register

here i uploaded the code. Please check the code and i am learning so i do not have enough skill to understand. i hope you understand. i am beginner.

int latchPin = 5;
int ClockPin = 6;
int dataPin = 4;

int led[8] = {0,1,1,0,0,1,1,0};
int ledState[8] ;
void setup() 

    {
      pinMode(latchPin,OUTPUT);             
      pinMode(ClockPin, OUTPUT);
      pinMode(dataPin, OUTPUT);
    }

void loop() {

 digitalWrite(latchPin, LOW);
        for(int i=0;i<8;i++)
      {

        if(led[i] == 1) ledState[i] ^= 1;
        digitalWrite(ClockPin,LOW);
        digitalWrite(dataPin,led[i]);
    //    shiftOut(dataPin, ClockPin, MSBFIRST, ledState[i]);
        digitalWrite(ClockPin,HIGH);
     }      
      digitalWrite(latchPin, HIGH);    
delay(300);
}

This code works fine with inverse flashing. But still please check once that position of variable,loop etc are ok.

int latchPin = 5;
int ClockPin = 6;
int dataPin = 4;

int led[8] = {0,1,1,0,0,1,1,0};
int ledState[8] ;
void setup() 

    {
      pinMode(latchPin,OUTPUT);             
      pinMode(ClockPin, OUTPUT);
      pinMode(dataPin, OUTPUT);
    }

void loop() {

 digitalWrite(latchPin, LOW);
        for(int i=0;i<8;i++)
      {

        led[i] ^= 1;
        digitalWrite(ClockPin,LOW);
        digitalWrite(dataPin,led[i]);
//        shiftOut(dataPin, ClockPin, MSBFIRST, ledState[i]);
        digitalWrite(ClockPin,HIGH);
     }      
      digitalWrite(latchPin, HIGH);    
delay(300);
}