您好,我是 C 編程新手,有一個問題:為什么這不能為第一個和最后一個位置具有相同字符的字串獲取回傳值 1:
function1(char* str){
if(str[0]==str[strlen(str)-1]){
return 1;
}
return 0;
}
編輯:就我而言,解決方案是在我的字串中,最后一個元素的索引為 strlen(str)-2。
uj5u.com熱心網友回復:
這有效:
#include <stdio.h>
#include <string.h>
int function1(char* str)
{
if(!(strlen(str) == 0))
{
if(str[0] == str[strlen(str)-1])
return 1;
return 0;
}
return 0;
}
int main()
{
printf("I am same: %i\n", function1("HaH"));
printf("I am not same: %i\n", function1("HaR"));
return 0;
}
- 您缺少函式的回傳型別 :) 編輯:此外,您應該注意 是否
str為空。
uj5u.com熱心網友回復:
在我的情況下,似乎 strlen -2 是字串中最后一個字符的索引
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/356245.html
