我的小程序:
int main ( ){ char buffer[80]; Printheader(); cout << "\nString reversal program"; cout << "\nType in a short string of words."; cout << "\nI will reverse them."; cout << "\n:"; cin.getline(buffer,79); cout << "\nYou typed " << buffer; reverse (buffer); cout << "\nReversed: " << buffer; cout << endl; system("PAUSE"); return 0;}voID reverse(char* string){ char* pStart,*pEnd; int length; char temp; length = strlen(string); pStart = string; pEnd = &string[length - 1]; while(pStart < pEnd) { temp = *pStart; *pStart = *pEnd; *pEnd = temp; pStart++; pEnd--; }}解决方法
voID str_reverse( char *str ) { char *str_end = strchr( str,0 ); std::reverse( str,str_end );}
如果你应该写一个循环,
voID str_reverse( char *str ) { std::size_t len = std::strlen( str ); for ( std::size_t index = 0; index != len / 2; ++ index ) { std::swap( str[ index ],str[ len - index - 1 ] ); }}
或者,当然,如果你可以使用C字符串,
voID str_reverse( std::string &str ) { std::reverse( str.begin(),str.end() );}总结
以上是内存溢出为你收集整理的反向C风格的字符串? – C全部内容,希望文章能够帮你解决反向C风格的字符串? – C所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)