You can also use that:
rotatedPoint = CGPointApplyAffineTransform(initialPoint, CGAffineTransformMakeRotation(angle));
EDIT: to perform rotation around custom point you must do like Adam described in his answer. Using CGAffineTransform it must look something like:
CGAffineTransform translateTransform = CGAffineTransformMakeTranslation(customCenter.x, customCenter.y);
CGAffineTransform rotationTransform = CGAffineTransformMakeRotation(angle);
CGAffineTransform customRotation = CGAffineTransformConcat(CGAffineTransformConcat( CGAffineTransformInvert(translateTransform), rotationTransform), translateTransform);
rotatedPoint = CGPointApplyAffineTransform(initialPoint, customRotation);
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…