In such a situation, how can you center the middle point?
You may also solve that problem by simple geometry trick :) Create a circle with a center at the end point of line segment and a radius a little bit greater than a half of the line segment. Then put a copy of the circle at the other end of it. The circles will intersect at two points. When you connect that points with a straight line it will intersect your line segment exactly in the half way. I attach a picture to make it more clear.
You might also try using the Rectangle Tool (since you can snap a guide to the exact center) or use a Grid (view>show>grid) with Snap to Grid (view>snap to>grid). Place a rectangle and snap a guide to the center then remove any extra anchors. Obviously not ideal, but a bit faster than trying to count pixels.
Adding my method in case it helps. This is in Illustrator CC 2019--I can't say much about older versions. I had an object where I wanted to add a single anchor point on one small straight path, equidistant from either of the two surrounding anchor points.
- Use the Scissor Tool (C) and cut the two anchor points between which you want to add a new anchor point; this gives you a completely separate line segment.
- Select the now-disconnected line segment (easiest for me to use the Layers panel and select it there since it's not really visible at this point--I didn't have any stroke in my example).
- Click Object > Path > Add Anchor Points; this adds the one anchor point exactly between the other two.
- Use the Direct Selection Tool (A) and drag over JUST ONE of the corners where the anchor points were cut in step 1.
- Use Ctrl+J (Cmd+J on Mac) to join the anchor points.
Repeat steps 4 and 5 for the other anchor points cut in step 1.
*Edit: By the way you can use the Selection Tool (V) instead, select the whole object, and use Object > Path > Add Anchor Points, but this adds one anchor point between all existing anchor points, which is not what I was after. I tried using the Direct Selection Tool and just selecting the one segment I wanted to manipulate but it still added anchor points on all the segments in the object instead of just the one.