|
Namazu for hns による簡易全文検索 詳しくは 詳細指定/ヘルプを参照して下さい |
|||||||||||||||||||||||||||||||||||||||||||||||||||
2001年12月06日(木) 旧暦 [n年日記]#1 [C] ある文字から後を捨てたいが、Segmentation fault
何故。
extern void printf(); unsigned int str_len(s) register char *s; { register char *t; t = s; for (;;) { if (!*t) return t - s; ++t; if (!*t) return t - s; ++t; if (!*t) return t - s; ++t; if (!*t) return t - s; ++t; } } int main () { static char *ptr = "makoto%test@harry.ki.nu"; char i; printf("start: %s\n", ptr); printf("%0x\n", (int) ptr); ptr += str_len(ptr); printf("%0x\n",(int) ptr); while ( *ptr != '@' ) --ptr; printf("%0x\n",(int) ptr); printf("%s\n", ptr); i = *ptr; printf("%0x\n", i); *ptr = 0; printf("done.\n"); return 0; } @ 出来た。ptr と *p は混ぜてはいけない ?:extern void printf(); extern char* strrchr(); static char ptr[] = "makoto%test@harry.ki.nu"; int main () { char *p; p = ptr; printf("start: %s\n", ptr); p = strrchr(ptr,'@'); *p = 0; printf("%s\n", ptr); return 0;という訳で、上で試したことは結局役に立たなかった。.. 全くの冗談だという気もしているが qmail-1.03 を使って relay-test.mail-abuse.org を通すようにする修正を作って見た。 ( つっこみ )
|
最近の日記 2024年04月29日 ・dkim 2024年03月10日 ・停電 (瞬電) 2024年03月03日 ・the second try on bare-metal ・useradd 2024年02月29日 ・opendkim and senmail 2024年01月24日 ・chat/iam 0.0.8 | ||