#include <string.h> // for strlen
char my_pop_back(char *str)
{
const int len = strlen(str);
if( len == 0 ) {
return '\0'; // str が空文字列の場合は、'\0' を返す
} else {
char c = str[len-1]; // 末尾文字を c に代入
str[len-1] = '\0'; // 終端記号のヌル文字を次の位置に書き込む
return c; // 末尾文字を返す
}
}
解説:
char my_pop_back(char *str)
{
if( *str == '\0' ) { // str が空文字列の場合
return '\0'; // '\0' を返す
} else {
while( *str != '\0' ) {
++str; // str をヌル文字まで進める
}
char c = *--str; // 末尾文字を c に保存
*str = '\0'; // 末尾文字の場所にヌル文字を上書き
return c; // 保存しておいた末尾文字を返す
}
}
解説:
前: | 次: