Как я могу проверить, заканчивается ли строка с «.csv» в C
Я пробовал использовать strlen
без каких-либо успехов
Как насчет:
char *dot = strrchr(str, '.'); if (dot && !strcmp(dot, ".csv")) /* ... */
if(strlen(str) > 4 && !strcmp(str + strlen(str) - 4, ".csv"))
Простейшей (и самой общей) формой кода ThiefMaster будет:
int string_ends_with(const char * str, const char * suffix) { int str_len = strlen(str); int suffix_len = strlen(suffix); return (str_len >= suffix_len) && (0 == strcmp(str + (str_len-suffix_len), suffix)); }