【C言語】 便利な自作関数 【最高】
■ このスレッドは過去ログ倉庫に格納されています
00011
NGNG0002デフォルトの名無しさん
NGNGprintf("┏┓\n");
swich(n) {
case 10:printf("┃┃\n");
case 9:printf("┃┃\n");
case 8:printf("┃┃\n");
case 7:printf("┃┃\n");
case 6:printf("┃┃\n");
case 5:printf("┃┃\n");
case 4:printf("┃┃\n");
case 3:printf("┃┃\n");
case 2:printf("┃┃\n");
case 1:printf("┃┃\n");
}
printf("┗┛\n");
}
0003デフォルトの名無しさん
NGNGPing 1のIP
goto Loop
0004デフォルトの名無しさん
NGNG0005デフォルトの名無しさん
NGNG/*shineには、通常>>1と入力します。*/
0006デフォルトの名無しさん
NGNGアセンブリで書いたヤツとリンクさせるので
0007デフォルトの名無しさん
NGNG┌―――――――――――――┐
|(・∀・)ニクコプーンクエ!. |×| |
├―――――――――――――┤
|>>1 |
| |
|(・∀・)つ∴ ニクコプーンクエ! |
| |
| ┌――――┐ |
| │ OK | |
| └――――┘ |
└―――――――――――――┘
0008デフォルトの名無しさん
NGNG0009デフォルトの名無しさん
NGNG{int temp;temp=*px;*px=*py;*py=temp;}
結構有名なswap関数
0010デフォルトの名無しさん
NGNGnamespace _2 {
namespace _3 {
namespace _4 {
namespace _5 {
// 以下略
0011デフォルトの名無しさん
NGNG#define BIGIN int main(void){
#define END return 0;}
これでDelphiになる。
0012デフォルトの名無しさん
NGNG#define then )
#define begin {
#define end };
#define while while(
#define do )
0013デフォルトの名無しさん
NGNG#define <<endl )
0014デフォルトの名無しさん
NGNG{
printf(">>1はアホ\n");
}
0015デフォルトの名無しさん
NGNGこれって単語の一部とか意図してないところも変換されちゃってエラーになったりしないの?
0016デフォルトの名無しさん
NGNG> これって単語の一部とか意図してないところも変換されちゃってエラーになったりしないの?
#define if if(
#define then )
#define begin {
#define end };
#define while while(
#define do )
void foo(int hiendmachine, int letsbegin)
{
if hiendmachine == 0 then
begin
return;
end
while letsbegin < hiendmachine do letsbegin++;
}
ぐらいなら大丈夫だよ。
0017デフォルトの名無しさん
NGNG#define polymorphic virtual
#defube no_implement =0
0018デフォルトの名無しさん
NGNG0019デフォルトの名無しさん
NGNGできるの?
0020デフォルトの名無しさん
NGNG0021デフォルトの名無しさん
NGNGint inthen,n=9;
for(inthen=0; inthen<n; inthen++)
printf("%d",inthen);
0022デフォルトの名無しさん
NGNGできねーみたいだ。
C:\DOCUMENTS AND SETTINGS\ADMINISTRATOR\MY DOCUMENTS\DEVELOPMENT\test\test.cpp(10) : fatal error C1021: シャープ記号 (#) の後にくる文字群が、有効なプリプロセッサ ディレクティブの形式になっていません。'defube'
0023デフォルトの名無しさん
NGNG0024デフォルトの名無しさん
NGNG0025デフォルトの名無しさん
NGNG糞スレ揚げるな。氏ね
0026デフォルトの名無しさん
NGNGつーか、上げたかっただけだろ。
0027デフォルトの名無しさん
NGNG#define T(a) \
void a##_swap(a *lhs, a *rhs){ \
a tmp; \
tmp = *lhs; \
*lhs = *rhs; \
*rhs = tmp; \
}\
T(int);
int main(){
int x = 10;
int y = 99;
int_swap(&x, &y);
printf("x = %d, y = %d\n", x, y);
return 0;
}
0028デフォルトの名無しさん
NGNGやっぱり>>1はすごいなぁ。
あげ!
0029デフォルトの名無しさん
NGNG0030デフォルトの名無しさん
NGNG厨が増えたように感じるのはこのスレのせいじゃないのかと予想してみる。
http://pc3.2ch.net/test/read.cgi/tech/1034085217/
0031デフォルトの名無しさん
NGNGvoid debug( const char *format, ... ) {
FILE *fp;
va_list argptr;
if ( (fp=fopen( "debug.log", "a")) != NULL ){
va_start( argptr, format );
vfprintf( fp, format, argptr );
va_end( argptr );
fclose(fp);
}
return;
}
va_list の使い方が正しいのかどうかわかんないけど。
あと,自作じゃないんで紹介だけなんだけど
http://www.linux.or.jp/JM/html/LDP_man-pages/man3/printf.3.html
これの例に挙げられてる make_message() 関数はわりと重宝してます。
# ていうか manpage だから常識の範囲内? 笑い
0032デフォルトの名無しさん
NGNGュ / |'''' |::::://O//| / 半ば 無駄レス
.ッ \ |‐┐ |::://O/ ノ ヾ、/
: |__」 |/ヾ. / / だが 半ば……
ヽ /\ ヽ___ノ / . へ、,/ 良レス…!
/ × / { く /
く /_ \ !、.ノ `ー''"
/\ ''" //
| \/、/ ゙′
|\ /|\ ̄
\|
0033デフォルトの名無しさん
NGNGいちいちopen/closeしてたんでは重すぎるだろ
0034デフォルトの名無しさん
NGNG自作じゃないけど
0035デフォルトの名無しさん
NGNGint WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
{
MessageBox( NULL,
" / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ \r\n"
"< しいたけですが、何か?\r\n"
" \_________ \r\n"
, "しいたけ", MB_ICONSTOP );
return 0;
}
0036デフォルトの名無しさん
NGNG{
hoge="unco";
}
0037デフォルトの名無しさん
NGNGお前このコードで何したいんだ ?
ネタコードにしても、ひどいよ。
0038manko_chinko ◆GLc2rpKRNM
NGNGputchar('a');
}
0039アフォルトの名無しさん
NGNG, 'ニニニ、::::(0::::::::::ヽ、
 ̄ ̄ヽ'::::::::::::::: ヾ 見てごらん >>1 を あれがリアル厨房だよ
)::: .... \
/ ::::::::::::::::::ヽ
/ :::::::::::::::::|
/ :::::::::::::::::|
/ :::::::::::::::::::|
/ ::::::::::::::::::::|
| :::::::::::::::::::::|
. | :::::::::::::::::::::|
_ , ―-、| /::::::::::::::/::::|
\ヲ'⌒ヽ:| /:::::::::::::::/::::::|
ト`_ ノ::| /:::::::::::::/::::::::|
人;;;;;;;::::;:| |:::::::::::::/::::::::/
/γ `:::::| |::::::::::::/::::::::/
/ ( ヽ :::| |:::::::::/::::::::/ ふーん なんだか
{ } } ::| |::::::::{::::::::/ 生きてる価値なさそうだね ぱぱ
| / } ::| .ヽ::::|:::::::/
} { / ::| .ヽノ ::::/
} | ( :λ :::|
( ヽ、 ) ノヽ ::::|
ヽ, ~ 〈 ト、_ | ::::::ヽ、
( ,' ノ | |~7 ::::::::::::::`ヽ、
ヽ,、,、,γ' ノ, -‐W~フ { ト、:::::::::::::::::::ヽ、
∠____ト-┘z__,―' ̄Σ Z  ̄ヽ―-、_ノ
'―z_,┴'~
0040デフォルトの名無しさん
NGNGprintf("%c%c%c%c",U(),N(),K(),O());
}
char U(void)
{
return 'U';
}
char N(void)
{
return 'N';
}
char K(void)
{
return 'K';
}
char O(void)
{
return 'O';
}
0041デフォルトの名無しさん
NGNG0042デフォルトの名無しさん
NGNG0043デフォルトの名無しさん
NGNG0044デフォルトの名無しさん
NGNG0045デフォルトの名無しさん
NGNG{
return n==0?"0ですYO!":"0じゃないYO!";
}
0046デフォルトの名無しさん
NGNG0047デフォルトの名無しさん
NGNG便利な関数を購入したい方は@niftiyIDを取得してください。
0048デフォルトの名無しさん
NGNGgame_main();
0049デフォルトの名無しさん
NGNG0050デフォルトの名無しさん
NGNG匿名なんだからとりあえず公開して、馬鹿にされた箇所直せばいいだろ。
うまくいきゃデバッグまでしてくれるんだから、使わにゃ損損。
0051デフォルトの名無しさん
NGNGだったら書くなよ。
変に興味モッチャウじゃないの〜
0052デフォルトの名無しさん
NGNGそれじゃ小数点がカンマの所に対応できないだろ。バーカバーカ。
005349
NGNGintDecimalPoint = 0;
if(!(*pCharData == '1' || *pCharData == '2' || *pCharData == '3' || *pCharData == '4' || *pCharData == '5' || *pCharData == '6' ||
*pCharData == '7' || *pCharData == '8' || *pCharData == '9' || *pCharData == '0' || *pCharData == '-'))
return FALSE;
if(*pCharData == '-' && !FlgMinus)
return FALSE;
pCharData++;
while(*pCharData != '\0'){
if(!(*pCharData == '1' || *pCharData == '2' || *pCharData == '3' ||
*pCharData == '4' || *pCharData == '5' || *pCharData == '6' ||
*pCharData == '7' || *pCharData == '8' || *pCharData == '9' ||
*pCharData == '0' || *pCharData == '.'))
{
return FALSE;
}
if(*pCharData == '.')
DecimalPoint++;
pCharData++;
}
if(DecimalPoint > 1)
return FALSE;
if(DecimalPoint == 1 && !FlgDecimalPoint)
return FALSE;
return TRUE;
}
005449
NGNG引数(2):小数点の有無 TRUE−有り FALSE:無し
引数(3):マイナスの有無 TRUE−有り FALSE:無し
戻り値 :TRUE−数字 FALSE−数字ではない
到ってオーソドックスかつわかりやすいプログラムです。。
0055デフォルトの名無しさん
NGNG0056デフォルトの名無しさん
NGNG0057デフォルトの名無しさん
NGNG叩くならソースを叩け
"-"と"-."がTRUEなのはいかがなものか。
0059アフォルトの名無しさん
NGNG55 のどこが、ソースに対する突っ込みじゃないんだ?
>>55
コーディングの上では・・・。
pCharData == NULL の場合は?
戻り値が bool 型なら true / false を返せ。
数字かどうかの判定を 2 箇所で行うな。
bool 型を使っている事以外、これはどう見ても C++ ではなく C だ。
名前が Judg なのはいかがなものか。
仕様の上では・・・。
正符号表現 "+12345" 等は FALSE か?
指数表現 "-2.345678e-012" 等は FALSE か?
単位つき表現 "640 pixels" 等は FALSE か?
atof() はいずれも有効な数値を返す。
006049
NGNG>>58-59
そうですね・・。
>>55
某掲示板で無いとの事で自作してみたんですがあったんですね・・。
レスくれた方ありがとうございました。m(_ _)m
なんでそこでatofが出てくるかね?
atofは、引数が""だろうが"abc"だろうが"1.2.3"だろうが
それなりの値を返すが、それでいいのか?
0062デフォルトの名無しさん
NGNGint judge_numeric( const char *str)
{
double dummy;
return sscanf(str,"%f",&dummy) == 1;
}
006362
NGNG006462
NGNG引数のデフォルトキャストが float -> double で
scanf はカンケイないよね
つか ヘルプみるのも面倒なくらいへたれ(ワラ
006562
NGNGアホだ(激ワラ
スレ汚してスマソ
0066名無しさん@XEmacs
NGNGvoid *p = malloc( size );
if ( !p ) exit( 1 );
return p;
}
0067デフォルトの名無しさん
NGNG0068デフォルトの名無しさん
NGNGスマートな方法をおしえてほしい
0069デフォルトの名無しさん
NGNGperlしる
0070デフォルトの名無しさん
NGNG0071デフォルトの名無しさん
NGNGint chekidesu( const char *str, char **anisama) {
int i; for( i = 0; *anisama; ++i,++anisama ) {
if( strcmp(str,*anisama) return i; }
return -1; }
char *sisters[] = { "...", "...", "...", 0 };
cheki = checkidesu( "yotsuha", sisters);
switch( cheki ) { case 0: case 1: ... };
0072デフォルトの名無しさん
NGNG0073名無しさん@XEmacs
NGNGsize_t length = 0;
char *str;
while ( fgetc(fp) != EOF ) ++length;
str = (char *) malloc_or_die( length + 1 );
fseek( fp, 0L, SEEK_SET );
fread( (void *)str, 1, length, fp );
str[length] = '\0';
return str;
}
0074デフォルトの名無しさん
NGNG0075デフォルトの名無しさん
NGNG>>72
どうせなら渡すのはファイルポインタよりファイル名の方が
getf() 呼ばれる前にファイルポインタずれてたら破綻するし
0077デフォルトの名無しさん
NGNGそれを言うならPHPしる!だろ。
0078デフォルトの名無しさん
NGNGint main(){
int i,j;
return 0;
}
0079デフォルトの名無しさん
NGNG0080デフォルトの名無しさん
NGNG>>78
OK
>>79
boolean って何にょ
008180
NGNG>>79
名前 die_if() のが良くない? dead_or_alive() は正直長い
あとこの程度なら do {} while(0) で包んだ #define の方が良かろ
0082デフォルトの名無しさん
NGNGてか assert()
0085デフォルトの名無しさん
NGNGhttp://www.kmonos.net/wlog/23.php
型安全でコンパイル時評価な配列の長さ取得。
namespace detail
{
template<int N> struct array_size_t { char result[N]; };
template<class T,int N> array_size_t<N> array_size(T (&x)[N]);
}
#define lengthof(arr) (sizeof(detail::array_size(arr).result))
0086デフォルトの名無しさん
NGNG0087デフォルトの名無しさん
NGNG0088C++使い
NGNG0089デフォルトの名無しさん
NGNGその名前は STL のものとかぶるからよせ。
substitute とか、change_string とかにしろ (例はあまり妥当ではないが)。
いや、単に名前がかぶるだけなら別に構わないのだが、それが標準であるものと
別の機能を持っている場合は混乱する。
0090デフォルトの名無しさん
NGNG{
...
return result;
}
http://homepage2.nifty.com/rohizuka/ka/pa_003_a.htm = WebSeach("doll");
0091デフォルトの名無しさん
NGNGそれはもういいよ・・・。
0093デフォルトの名無しさん
NGNGstd::string &operator<<(std::string &L, unsigned R) { char buf[ 12]; sprintf (buf, "%d" , R); return L += buf; }
std::string &operator<<(std::string &L, double R) { char buf[256]; _snprintf(buf, sizeof(buf), "%.03f", R); return L += buf; }
std::string &operator<<(std::string &L, signed char R) { return L += (signed )R; }
std::string &operator<<(std::string &L, unsigned char R) { return L += (unsigned)R; }
std::string &operator<<(std::string &L, signed short R) { return L += (signed )R; }
std::string &operator<<(std::string &L, unsigned short R) { return L += (unsigned)R; }
std::string &operator<<(std::string &L, signed long R) { return L += (signed )R; }
std::string &operator<<(std::string &L, unsigned long R) { return L += (unsigned)R; }
std::string &operator<<(std::string &L, float R) { return L += (float )R; }
std::string &operator<<(std::string &L, bool R) { return L += R? "true": "false"; }
std::string &operator<<(std::string &L, char R) { return L += R; }
std::string &operator<<(std::string &L, const char *R) { return L += R; }
std::string &operator<<(std::string &L, std::string &R) { return L += R; }
0094デフォルトの名無しさん
NGNG0095デフォルトの名無しさん
NGNG0096デフォルトの名無しさん
NGNGint getchar();int putchar(int);int main(){char k[]="A52A2245332A252B435B2222A2"
"B2A2A23A2C32A3B5B2222A52B43532A2352C23A52A2246D2A3533B35K2A4D22A3224A45D2C25B"
"2A32A5D2C25D4A26C4A1",*p=k;int i,c,b=1;while(*p){c=0;for(i=0;i<8;i++){if(*p==
'0'){if(!*++p)break;b=!b;}c=(c<<1)+b;if((*p)--=='A')*p='0';if(*p >= 'A')b=!b;}
if(c)putchar(c);}getchar();return 0;}
0097デフォルトの名無しさん
NGNG0098デフォルトの名無しさん
NGNG■ このスレッドは過去ログ倉庫に格納されています