LLC

配列境界チェックしてほしいんですけど

LLC

-bで境界チェック $ cat alloc.c #include <stdio.h> #include <stdlib.h> int main() { int i; char ptr[30]; ptr[30] = 0; return 0; } $ tcc -b alloc.c $ ./a.out ???(最近SEGVのメッセージが化ける…)</stdlib.h></stdio.h>

問題点

LLC

http://d.hatena.ne.jp/shinichiro_h/20060306#p1 にもあるとおり、手軽な文字列操作が無いっていうのが、まさに。 手軽なコンテナっていうかハッシュテーブル 手軽な正規表現 手軽な入出力 そんなときはglibだよって言いたいところなんだけど、あれが手軽か…

例外が無いんですけど

LLC

例外はいりません #!/usr/bin/tcc -run #include <stdio.h> int main( int argc, char **argv ) { FILE *fp = fopen( argv[1], "r" ); if ( fp == NULL ) { puts("fatal"); return 1; } return 0; }君は今まで(略</stdio.h>

GCが無いんですけど

LLC

GCはいりません。メモリの解放はOSがやってくれます。 #!/usr/bin/tcc -run #include <stdio.h> #include <stdlib.h> int main() { int i; char *ptr; scanf("%d",&i); ptr = malloc(i); return 0; }君は今まで一度としてこれで困ったことがあるか!?</stdlib.h></stdio.h>

なにはともあれtcc

LLC

#! /usr/bin/tcc -run #include <stdio.h> int main() { puts("hello"); }$ chmod u+x hello.c $ ./hello.c helloまー、このぐらいはね。</stdio.h>

Lightweight Language C

LLC

http://d.hatena.ne.jp/shinichiro_h/20060306#1141574661 日々の生活のツールをC言語で賄うためのノウハウ集があったら良いような気がした