Access out of range


suppose OneLineText is a string

Don't forget to check the index or it could be out of range! Lenthg checking must performe at first rather than access the char in the string or the string will be also out of range!

 

The following will be out of range because it may acces the character out of the rang before it check the boundary.
=============================================
    while( isalpha( OneLineText.at( i ) ) && ( i < LengthOfText ) )
    {
      i++ ;
    }//end while
=============================================

The following code will be all right.
=============================================
    while( ( i < LengthOfText ) && isalpha( OneLineText.at( i ) ) )
    {
      i++ ;
    }//end while
=============================================

本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3