Layer is not moving correctly..

here is my code.

if((car~~>getPosition.x >screenSize.width/2 && car~~>getPosition().y>screenSize.height/2)&&(car~~>getPosition.x<=.width*_tileMap~~>getTileSize().width)&& car>getPosition().y<=(_tileMap~~>getMapSize.height*_tileMap~~>getTileSize().height)))
{
CCPoint carPositionDifference=ccpSub, carPrevPosition);
this
>setPosition(ccpSub(this->getPosition(), carPositionDifference));

}
the problem is when i move car to the left and of tile map the layer does not move there…is there any wrong thing in my condition? help plz