Сишные подключаемые функции в Postgre

dEn

Guest
Сишные подключаемые функции в Postgre

Я написал простенькую функцию для поднятие в верхний регистр кодировки Win1251 в двух вариантах и ни одна из них не работает, первый вариант ровным счётом ничего не делает, а второй говорит про ошибки работы с памятью, может кто подскажет в чём дело

#include "postgres.h"

char *upwin(char *String) {
int i;

for (i=0;i<strlen(String);i++) {
if ((String >= '340') && (String <= '377'))
String -= 32;
}
return String;
}

char *upwin(char *String) {
int i;
char *ret;

ret = palloc(strlen(String)+1);
memset(ret, 0, Strlen(String)+1);
strcpy(ret, String);

for (i=0;i<strlen(String);i++) {
if ((ret >= '340') && (ret <= '377'))
ret -= 32;
}
return ret;
}
 
Сверху