探検
C言語をやりたいんですが
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2007/12/23(日) 02:35:09 まずなにやったらいいの?
プリプロセッサ (3/5)
#pragmaは重要だ。
#pragma packを使うことで構造体のあラインを調整できる。
#pragma pack(1)とすれば
以降の構造体が1バイトであラインされる(パデングなし)
#pragma pack(4)としたばあい、少々複雑だ。
typedef struct {
int x;
char c1;
char c2;
} SEXOS;
printf(%d", sizeof SEXOS);
何バイトだろうか?
12バイトにはならず8バイトになる。
#pragmaは重要だ。
#pragma packを使うことで構造体のあラインを調整できる。
#pragma pack(1)とすれば
以降の構造体が1バイトであラインされる(パデングなし)
#pragma pack(4)としたばあい、少々複雑だ。
typedef struct {
int x;
char c1;
char c2;
} SEXOS;
printf(%d", sizeof SEXOS);
何バイトだろうか?
12バイトにはならず8バイトになる。
167 ◆nullpop./c
2009/05/05(火) 12:02:32 プリプロセッサ (4/5)
プリプロセッサによってコメントをネストできる
#ifdef SEC
#ifdef SEV
/* */
#else
#endif
#endif
プリプロセッサによってコメントをネストできる
#ifdef SEC
#ifdef SEV
/* */
#else
#endif
#endif
プリプロセッサ (5/5)
##演算子
#define pasta(front,end) front ## end
pasta(name,1)でname,1という文字記号が作られる
##演算子
#define pasta(front,end) front ## end
pasta(name,1)でname,1という文字記号が作られる
ポインタ渡し?参照渡し?(1/2)
Cの関数呼出はすべて値私だ。
引数はコピーを受け取り、元の値には影響しない
#define function int
function fera(int longchinko){
longchinko = 17;
}
function main(){
short hokei=4;
fera(hokei);
printf("%d",hokei);
}
アドレスを渡すことで。引数の指す値を変更でくいる
#define function int
function fera(int *longchinko){
*longchinko = 17;
}
function main(){
short hokei=4;
fera(&hokei);
printf("%d",hokei);
}
Cには参照渡しは無い。
だから前述のポインタを使った参照渡しもどきしかできぬ。
Cの関数呼出はすべて値私だ。
引数はコピーを受け取り、元の値には影響しない
#define function int
function fera(int longchinko){
longchinko = 17;
}
function main(){
short hokei=4;
fera(hokei);
printf("%d",hokei);
}
アドレスを渡すことで。引数の指す値を変更でくいる
#define function int
function fera(int *longchinko){
*longchinko = 17;
}
function main(){
short hokei=4;
fera(&hokei);
printf("%d",hokei);
}
Cには参照渡しは無い。
だから前述のポインタを使った参照渡しもどきしかできぬ。
ポインタ渡し?参照渡し?(2/2)
引数でポインタそのものを変更するには
ポインタのポインタを使う
void mallocpp(char *pp){
*pp = malloc(INT_MAX);
}
main(){
char *po;
mallocpp(&po);
stlcpy(po, "sex and them!");
free(po);po = 0;
}
引数でポインタそのものを変更するには
ポインタのポインタを使う
void mallocpp(char *pp){
*pp = malloc(INT_MAX);
}
main(){
char *po;
mallocpp(&po);
stlcpy(po, "sex and them!");
free(po);po = 0;
}
コマンドライン引数(1/1)
ffmpegのようなソフトウェアはコマンドライン引数を受け付けておる
ffmpeg -i "千と千尋の神隠し.vob" -map 0.5:0.2 -vcodec libxvid -qscale 4 -acodec libmp3lame -ab 192k -ac 2 sex.avi
main関数は2つの引数をとることができ、
次のように定義すればコマンドライン引数を取得できる。
main(int chokin, char **cap)
{
while(chokin--) puts(cap[chokin]);
}
ffmpegのようなソフトウェアはコマンドライン引数を受け付けておる
ffmpeg -i "千と千尋の神隠し.vob" -map 0.5:0.2 -vcodec libxvid -qscale 4 -acodec libmp3lame -ab 192k -ac 2 sex.avi
main関数は2つの引数をとることができ、
次のように定義すればコマンドライン引数を取得できる。
main(int chokin, char **cap)
{
while(chokin--) puts(cap[chokin]);
}
FIFO、FILO(1/2)
FIFO,FILOはデータ構造。
First In Fast Out、割き入れ先出し
First In Last Out、先入れ後出し
のことだ。
typedef struct {
void (*pfin)(int);
int (*pfout)(void);
} CHINPO_IO;
//FIFO function
int fifobuf[100];
int fifoptr = fifobuf;
void fifoin(int i){
*fifoptr++;
}
int fifoout(void){
return *fifoptr--;
}
main(){
CHINPO_IO ci[2];
ci[0].pfin = fifoin;
ci[1].pfout = fifoout;
ci[0].pfin(1);ci[0].pfin(10);ci[0].pfin(100);
printf("%d %d %d\n", ci[0].pfout(), ci[0].pfout(), ci[0].pfout());
}
FIFO,FILOはデータ構造。
First In Fast Out、割き入れ先出し
First In Last Out、先入れ後出し
のことだ。
typedef struct {
void (*pfin)(int);
int (*pfout)(void);
} CHINPO_IO;
//FIFO function
int fifobuf[100];
int fifoptr = fifobuf;
void fifoin(int i){
*fifoptr++;
}
int fifoout(void){
return *fifoptr--;
}
main(){
CHINPO_IO ci[2];
ci[0].pfin = fifoin;
ci[1].pfout = fifoout;
ci[0].pfin(1);ci[0].pfin(10);ci[0].pfin(100);
printf("%d %d %d\n", ci[0].pfout(), ci[0].pfout(), ci[0].pfout());
}
173デフォルトの名無しさん
2009/05/07(木) 14:52:04 ありがとう
174デフォルトの名無しさん
2009/05/07(木) 18:42:21 文字列検索(1/4)
文字列検索にはstrstr関数を使う
char tx[] = "sex if";
if (strstr(sex, " i")){
みつかった
}else{
ない
}
Boyer-Mooer法については後述する
文字列検索にはstrstr関数を使う
char tx[] = "sex if";
if (strstr(sex, " i")){
みつかった
}else{
ない
}
Boyer-Mooer法については後述する
176 ◆nullpop./c
2009/05/07(木) 23:33:34 文字列検索(2/4)
/*奥村晴彦先生のを最適化*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <limits.h>
int sweets(unsigned char *text, unsigned char *pattern){
int i, j, k, len;
static int skip[UCHAR_MAX + 1];
unsigned char c, tail;
if ((len = strlen(pattern)) == 0) return -1;
tail = pattern[len-1];
if (len == 1) {
if ((i = (int)strchr(text, tail)) != 0) return i-(int)text;
} else {
memset(skip, len, UCHAR_MAX+1);
for (i = 0; i < len - 1; i++)
skip[pattern[i]] = len - 1 - i;
while ((c = text[i]) != 0) {
if (c == tail) {
j = len - 1; k = i;
while (pattern[--j] == text[--k])
if (j == 0) return k;
}
i += skip[c];
}
}
return -1;
}
/*奥村晴彦先生のを最適化*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <limits.h>
int sweets(unsigned char *text, unsigned char *pattern){
int i, j, k, len;
static int skip[UCHAR_MAX + 1];
unsigned char c, tail;
if ((len = strlen(pattern)) == 0) return -1;
tail = pattern[len-1];
if (len == 1) {
if ((i = (int)strchr(text, tail)) != 0) return i-(int)text;
} else {
memset(skip, len, UCHAR_MAX+1);
for (i = 0; i < len - 1; i++)
skip[pattern[i]] = len - 1 - i;
while ((c = text[i]) != 0) {
if (c == tail) {
j = len - 1; k = i;
while (pattern[--j] == text[--k])
if (j == 0) return k;
}
i += skip[c];
}
}
return -1;
}
177デフォルトの名無しさん
2009/05/08(金) 00:38:07 あーセックスしてー
178デフォルトの名無しさん
2009/05/08(金) 04:48:57 ーてしスクッセーあ
make(1/3)
たくさんソースファイル尾つくって、毎回それを全部コンパイルするのは無駄だ。
変更したソースだけをコンパイルすれば効率がいい
dmc a.c b.c c.c
この場合a.c b.c c.cがコンパイルされa.obj,b.obj,c.objが作られる。
-------MAKEFILE---------
SEX : a.c b.c c.c
(tab)dmc a.c b.c c.c
---------------------------
MAKEFILEというファイル名で
(tab)はTAB1こ。
これをmakeすると…
たくさんソースファイル尾つくって、毎回それを全部コンパイルするのは無駄だ。
変更したソースだけをコンパイルすれば効率がいい
dmc a.c b.c c.c
この場合a.c b.c c.cがコンパイルされa.obj,b.obj,c.objが作られる。
-------MAKEFILE---------
SEX : a.c b.c c.c
(tab)dmc a.c b.c c.c
---------------------------
MAKEFILEというファイル名で
(tab)はTAB1こ。
これをmakeすると…
>>177-178
void rev(char *x,char*m, short s)
{
long bin=0;
long sm=strlen(x);
m[sm]=0;
for(;bin<sm;bin+=2){
m[bin]=x[sm-bin-2];
m[bin+1]=x[sm-bin-1];
}
}
main(){
char sex[] = "あーセックスしてー";
static char manko[64];
rev(sex,manko, 2);
puts(manko);
}
void rev(char *x,char*m, short s)
{
long bin=0;
long sm=strlen(x);
m[sm]=0;
for(;bin<sm;bin+=2){
m[bin]=x[sm-bin-2];
m[bin+1]=x[sm-bin-1];
}
}
main(){
char sex[] = "あーセックスしてー";
static char manko[64];
rev(sex,manko, 2);
puts(manko);
}
181 ◆nullpop./c
2009/05/10(日) 00:46:00 /*
ライブラリ関数[1]
ファイル関係は以下のようにする
*/
#include <stdio.h>
typedef struct {
FILE *sex;
char sex2p[801];
FILE *(*open)(const char *n,const char*m);
int (*close)(FILE*);
char *(*gets)(char*,int n,FILE*);
} SEX_IO_VER;
SEX_IO_VER sit = {NULL,"sex",fopen,fclose,fgets};
main(int argc, char **argv)
{
static int line;
sit.sex = sit.open(argv[1], "r");
while (sit.gets(sit.sex2p,800,sit.sex)) printf("line%4d -- %s",line++,sit.sex2p);
sit.close(sit.sex);
}
ライブラリ関数[1]
ファイル関係は以下のようにする
*/
#include <stdio.h>
typedef struct {
FILE *sex;
char sex2p[801];
FILE *(*open)(const char *n,const char*m);
int (*close)(FILE*);
char *(*gets)(char*,int n,FILE*);
} SEX_IO_VER;
SEX_IO_VER sit = {NULL,"sex",fopen,fclose,fgets};
main(int argc, char **argv)
{
static int line;
sit.sex = sit.open(argv[1], "r");
while (sit.gets(sit.sex2p,800,sit.sex)) printf("line%4d -- %s",line++,sit.sex2p);
sit.close(sit.sex);
}
182デフォルトの名無しさん
2009/05/10(日) 17:20:57 C言語は実際にみてみればいいですねwこの前sakuyawwwっていうやつと知恵袋で書き込みしあったので見てみてください。
メモリには1バイト(8ビット)づつ番地が割り振られている。
1番地=1バイト=8ビット=256通りの情報
100番地に154を置くということは、100番地のメモリを10011010にするということ。
このことをある言葉で書いてみてください。
ある言葉はCですねw
Cで書いてみると
size of char = 1 バイト
size of short = 2 バイト
size of int = 4 バイト
size of unsigned int = 4 バイト
size of float = 4 バイト
size of double = 8 バイト
size of long double = 12 バイト
size of size_t = 4 バイト
これでおkですw
メモリには1バイト(8ビット)づつ番地が割り振られている。
1番地=1バイト=8ビット=256通りの情報
100番地に154を置くということは、100番地のメモリを10011010にするということ。
このことをある言葉で書いてみてください。
ある言葉はCですねw
Cで書いてみると
size of char = 1 バイト
size of short = 2 バイト
size of int = 4 バイト
size of unsigned int = 4 バイト
size of float = 4 バイト
size of double = 8 バイト
size of long double = 12 バイト
size of size_t = 4 バイト
これでおkですw
183デフォルトの名無しさん
2009/05/10(日) 17:22:31ハッキングとクラッキングの違いについて、ハッカーは絶対に自分からハッキングしません。クラッカーどもはしますがね!
ハッカーは日本に何人いるか?については、具体的には分かりませんが、大体数百人ぐらいですね・・・自分がしっている人数でも、50人ぐらいしか知りません。
001b7 f2 0f 2c d3 cvttsd2si edx, xmm3はなんですか?について、自分が今まででそういうソフトは知りません。もしかしたら全然関係ないものかもしれないし、もしかしたら、本当に関係があるかもしれません。
ハッキングは防ぐことができますか?について、ここではハッキングではないので、後からは「クラッキング」と称します。
クラッカーはまあよほど物好きでなかったら、一般の人のPCやセキリュティに進入しません。まあ、一応クラッキングされたとして、
一応どんなPCにも独特のセキリュティが入っています。しかし、どんなセキリュティも30分ほどしか持たないといわれています。
なので、セキリュティへの進入を感知すると、しっかりしたPCだと警告がでるので、すぐにわかります。すると自動的にシャットダウンするなど色々な動作でクラッキングを防ぐ行動をします。
ハッキングのやり方は
自分のPC・セキリュティへの進入を感知→相手のプロダクトID(プロダクトキーでも可)→相手のセキリュティの突破・破壊(別に破壊しなくてもいいですが、したい場合はしちゃってください!)→後は自分の好きなようにする。
一応クラッキングについても教えますね。 まあ、専門ではないので間違っている場合があります。
相手のプロダクトID(IPアドレスがあればもっと簡単になります。)→相手のセキリュティの突破(破壊は絶対にしないでください。すぐにばれます。)→後は自分の好きなようにする。
まあ、すんごく、超簡単に言ってみるとこんな感じですね。
PCにアクセスとは何?については
多少間違っていますね。アクセスはハッキング(クラッキング)半分合っていて半分間違っています。自分のPCから相手のPCへのアクセスは相手も同意しているのが絶対です。それ以前にばれています。
あと、この回答は質問に答えただけなので、ベストアンサーにはしなくてもいいです。
184 ◆nullpop./c
2009/05/11(月) 21:49:51 >>182-183
ネタなのかマジなのかわからんが。。。。。
int,unsigned intはコンパイラ依存(2byte,4byteどちらか)
001b7 f2 0f 2c d3 cvttsd2si edx, xmm3
左が機械語、右が対応するアセンブリ言語
ネタなのかマジなのかわからんが。。。。。
int,unsigned intはコンパイラ依存(2byte,4byteどちらか)
001b7 f2 0f 2c d3 cvttsd2si edx, xmm3
左が機械語、右が対応するアセンブリ言語
185デフォルトの名無しさん
2009/05/13(水) 13:41:04186 ◆nullpop./c
2009/05/23(土) 09:29:12 演算子(1/5)
Cは演算子がおっぱいある
優先順位と結合規則について説明しよう
優先順位が高いものから演算されます
s+e*xのときにe*xをしてそれにsを足すといったようになる
優先順位が同じものが複数有る場合、結合規則が適用される
a+u+m-s+h
+-は結合規則が左から右になっているから
((a+u)+m)... というように演算される
Cは演算子がおっぱいある
優先順位と結合規則について説明しよう
優先順位が高いものから演算されます
s+e*xのときにe*xをしてそれにsを足すといったようになる
優先順位が同じものが複数有る場合、結合規則が適用される
a+u+m-s+h
+-は結合規則が左から右になっているから
((a+u)+m)... というように演算される
187 ◆nullpop./c
2009/05/23(土) 09:31:52 演算子(2/5)
配列の[]は注意が必要だ
sex[nakadasi]
これは
*(sex+nakadasi)
に変換される
だからa[5]と5[a]は同等だ
配列の[]は注意が必要だ
sex[nakadasi]
これは
*(sex+nakadasi)
に変換される
だからa[5]と5[a]は同等だ
188 ◆nullpop./c
2009/05/23(土) 09:34:06 演算子(3/5)
sizeof演算子は2つの使い方がある
main(){
short sex;
printf("%d"
"-----"
"%d"
,
sizeof(long),
sizeof sex);
}
sizeof演算子は2つの使い方がある
main(){
short sex;
printf("%d"
"-----"
"%d"
,
sizeof(long),
sizeof sex);
}
189 ◆nullpop./c
2009/06/06(土) 14:40:30 質問ある???
190デフォルトの名無しさん
2009/06/06(土) 16:41:34 >>187
うぉ、すげっ。
うぉ、すげっ。
191デフォルトの名無しさん
2009/06/09(火) 01:05:57 何かボタンを押したら・・・みないたのをやりたいんだけど
scanf()だとEnter押さなきゃ入ってくれないじゃない?
どうすればEnter以外のボタンでもキー入力を取得できるの?
scanf()だとEnter押さなきゃ入ってくれないじゃない?
どうすればEnter以外のボタンでもキー入力を取得できるの?
192デフォルトの名無しさん
2009/06/09(火) 01:16:26 標準のCライブラリでは無理。
処理系依存では、kbhit とかあるけど、最近のウィンドウズでも使えるんだっけ?
処理系依存では、kbhit とかあるけど、最近のウィンドウズでも使えるんだっけ?
193デフォルトの名無しさん
2009/06/10(水) 04:21:51 VCだと_kbhitが一応用意されてるな
使った事ないけど
使った事ないけど
194ぅゅ ◆e6.oHu1j.o
2009/09/10(木) 09:21:42 ほらよ!!!
#include <windows.h>
#include <conio.h>
#include <stdio.h>
void main(){
printf("Z か A ");
getch();
if( GetKeyState( 0x5A ) & 0x80 ){MessageBox( 0, "test" , "ぜっとー。。" , 0);}
if( GetKeyState( 0x41 ) & 0x80 ){MessageBox( 0, "test" , "えーぼたんー" , 0);}
}
#include <windows.h>
#include <conio.h>
#include <stdio.h>
void main(){
printf("Z か A ");
getch();
if( GetKeyState( 0x5A ) & 0x80 ){MessageBox( 0, "test" , "ぜっとー。。" , 0);}
if( GetKeyState( 0x41 ) & 0x80 ){MessageBox( 0, "test" , "えーぼたんー" , 0);}
}
195 ◆nullpop./c
2009/09/10(木) 19:13:43196デフォルトの名無しさん
2009/09/11(金) 03:33:51 e6.oHu1j.o でググると、しょうもないもんばっかり出てくるよ
197デフォルトの名無しさん
2009/09/11(金) 09:04:19 トリ付きの98%はゴミ
198 ◆nullpop./c
2009/09/13(日) 18:29:20 >>194修正
#include <windows.h>
#include <conio.h>
#include <stdio.h>
#include <mmsystem.h>
#pragma comment(lib,"winmm")
static char messagetable[][100] = {"エラーです", "ぜっとー。。", "えーぼたんー", };
void PrintMessage(int i){
HWND hwnd;
int table_id = 0;
hwnd = GetForegroundWindow();
if( GetKeyState( 'Z' ) & 0x80 ) table_id = 1;
if( GetKeyState( 'A' ) & 0x80 ) table_id = 2;
if(table_id !=0) {
MessageBox( hwnd, "test" , messagetable[table_id] , MB_ABORTRETRYIGNORE);
} else {
MCI_OPEN_PARMS mop;
mop.lpstrDeviceType = "cdaudio";
mciSendCommand((DWORD_PTR)NULL, MCI_OPEN, MCI_OPEN_TYPE, (DWORD_PTR)&mop);
mciSendCommand(mop.wDeviceID, MCI_SET, MCI_SET_DOOR_OPEN, (DWORD_PTR)NULL);
}
}
int main(void){
int i;
printf("Z か A ");
i = getch();
PrintMessage(i);
return EXIT_SUCCESS;
}
#include <windows.h>
#include <conio.h>
#include <stdio.h>
#include <mmsystem.h>
#pragma comment(lib,"winmm")
static char messagetable[][100] = {"エラーです", "ぜっとー。。", "えーぼたんー", };
void PrintMessage(int i){
HWND hwnd;
int table_id = 0;
hwnd = GetForegroundWindow();
if( GetKeyState( 'Z' ) & 0x80 ) table_id = 1;
if( GetKeyState( 'A' ) & 0x80 ) table_id = 2;
if(table_id !=0) {
MessageBox( hwnd, "test" , messagetable[table_id] , MB_ABORTRETRYIGNORE);
} else {
MCI_OPEN_PARMS mop;
mop.lpstrDeviceType = "cdaudio";
mciSendCommand((DWORD_PTR)NULL, MCI_OPEN, MCI_OPEN_TYPE, (DWORD_PTR)&mop);
mciSendCommand(mop.wDeviceID, MCI_SET, MCI_SET_DOOR_OPEN, (DWORD_PTR)NULL);
}
}
int main(void){
int i;
printf("Z か A ");
i = getch();
PrintMessage(i);
return EXIT_SUCCESS;
}
199デフォルトの名無しさん
2009/09/14(月) 19:59:25 適切なスレがあったら是非誘導お願いします。
C言語用の、データ構造やアルゴリズムのライブラリってありませんか?
C++ならばSTLやBoostがありますが、Cのためのそれらのようなものを探しています。
できればそれなりにユーザーもいて開発も続いているものが...
C言語用の、データ構造やアルゴリズムのライブラリってありませんか?
C++ならばSTLやBoostがありますが、Cのためのそれらのようなものを探しています。
できればそれなりにユーザーもいて開発も続いているものが...
200 ◆nullpop./c
2009/09/14(月) 20:35:09201デフォルトの名無しさん
2009/09/15(火) 07:54:09202デフォルトの名無しさん
2009/09/15(火) 22:36:28 >>200
つ[Numerical Recipies]
つ[Numerical Recipies]
203デフォルトの名無しさん
2009/09/15(火) 22:37:43 202s/200/201/
204デフォルトの名無しさん
2009/09/17(木) 22:47:59 入門書を・・・・買えばいいと思うよ
206デフォルトの名無しさん
2009/09/23(水) 20:17:28 C 言語を少し遣りたいのですが レス 返せる方居りますか?
207デフォルトの名無しさん
2009/09/23(水) 20:26:43 初歩的な質問で申し訳ないのですが?
決まった言語で在れば compiler は分かるのですが
C 言語での compiler と云うのが思い当たらないのです…
C 言語で compiler 処理はどの様に処理結果を出せば良いのでしょうか?
レス が無かったら悲しく クグル 事にします…
決まった言語で在れば compiler は分かるのですが
C 言語での compiler と云うのが思い当たらないのです…
C 言語で compiler 処理はどの様に処理結果を出せば良いのでしょうか?
レス が無かったら悲しく クグル 事にします…
208デフォルトの名無しさん
2009/09/23(水) 20:27:46 おりますが、C言語は少しやった程度でどうにかなるようなものではありません
本人の適性や学習ペースや目的にもよるものの、数ヶ月くらいは覚悟しましょう
本人の適性や学習ペースや目的にもよるものの、数ヶ月くらいは覚悟しましょう
209デフォルトの名無しさん
2009/09/23(水) 20:30:15210デフォルトの名無しさん
2009/09/23(水) 20:31:55 >>209
OS X です
OS X です
211デフォルトの名無しさん
2009/09/23(水) 20:33:41 >>209
gcc 系統の install はして居ります
gcc 系統の install はして居ります
212デフォルトの名無しさん
2009/09/23(水) 20:40:11 これだけで終わるのでしょうか…
213デフォルトの名無しさん
2009/09/23(水) 20:42:01 >>210
ターミナルを起動して
gcc filename.c
のように打てば、その filename.c がコンパイルされて a.out という実行ファイルが出来るので、
./a.out
と打てば実行される
ターミナルを起動して
gcc filename.c
のように打てば、その filename.c がコンパイルされて a.out という実行ファイルが出来るので、
./a.out
と打てば実行される
214デフォルトの名無しさん
2009/09/23(水) 20:50:23 >>209
以前は Linux でしたが?
多様性を考え Mac に移行した訳です…
個人で調べた結果 BSD 系程は command の充実は在りませんが?
自宅で BSD server を構築するのは
server 管理者の cost も負わなくては成らないので Mac と云う事です
以前は Linux でしたが?
多様性を考え Mac に移行した訳です…
個人で調べた結果 BSD 系程は command の充実は在りませんが?
自宅で BSD server を構築するのは
server 管理者の cost も負わなくては成らないので Mac と云う事です
215デフォルトの名無しさん
2009/09/23(水) 20:55:38216デフォルトの名無しさん
2009/09/23(水) 21:06:43217デフォルトの名無しさん
2009/09/24(木) 23:55:39 お前ゲームプログラムスレにいたキチガイだろwww
218デフォルトの名無しさん
2009/09/29(火) 11:24:04 >以前は Linux でしたが?
>個人で調べた結果 BSD 系程は command の充実は在りませんが?
何で質問しているの? 自分のことも判らないほど馬鹿なの?
>個人で調べた結果 BSD 系程は command の充実は在りませんが?
何で質問しているの? 自分のことも判らないほど馬鹿なの?
219デフォルトの名無しさん
2009/10/01(木) 12:00:21220デフォルトの名無しさん
2009/10/01(木) 13:42:50 >>219
連休だったんだろ。
連休だったんだろ。
221 ◆nullpop./c
2010/05/03(月) 20:06:36 int i = 10;
int * p = &i;//int型ポインタpにiのアドレスを代入する
簡単。
char str1[] = "abcde";
char * str2 = "abcde";
上と下は同じでどっちを使ってもいい。
int * p = &i;//int型ポインタpにiのアドレスを代入する
簡単。
char str1[] = "abcde";
char * str2 = "abcde";
上と下は同じでどっちを使ってもいい。
222 ◆nullpop./c
2010/05/03(月) 20:10:42 証明
int _cdecl main(void){
char str1[] = "abcde";
char * str2 = "abcde";
puts(str1);puts(str2);//abcdeabcde
if (strlen(str1) ==strlen(str2)) puts("str1 str2 is same!"):
str2=str1;
printf("%c", 2[str2]);//c
return 0;
}
int _cdecl main(void){
char str1[] = "abcde";
char * str2 = "abcde";
puts(str1);puts(str2);//abcdeabcde
if (strlen(str1) ==strlen(str2)) puts("str1 str2 is same!"):
str2=str1;
printf("%c", 2[str2]);//c
return 0;
}
223デフォルトの名無しさん
2010/05/03(月) 23:35:03 >>221-222
ネタ?
ネタ?
224 ◆nullpop./c
2010/05/03(月) 23:39:41 マジにネタレスご苦労
225デフォルトの名無しさん
2010/05/04(火) 00:47:59 > char str1[] = "abcde";
> char * str2 = "abcde";
> 上と下は同じでどっちを使ってもいい。
以下の実行結果を検証してみること。
int main(){
char str1[] = "abcde";
char * str2 = "abcde";
printf("%d\n", sizeof(str1));
printf("%d\n", sizeof(str2));
return 0;
}
> char * str2 = "abcde";
> 上と下は同じでどっちを使ってもいい。
以下の実行結果を検証してみること。
int main(){
char str1[] = "abcde";
char * str2 = "abcde";
printf("%d\n", sizeof(str1));
printf("%d\n", sizeof(str2));
return 0;
}
226デフォルトの名無しさん
2010/05/04(火) 04:09:32 >>225
カッコつけてんじゃねーよド素人。
カッコつけてんじゃねーよド素人。
227デフォルトの名無しさん
2010/05/04(火) 04:37:15 >>226
括弧つけてはいけないという法は無い
括弧つけてはいけないという法は無い
228 ◆nullpop./c
2010/05/04(火) 05:47:29229デフォルトの名無しさん
2010/05/04(火) 06:25:53230デフォルトの名無しさん
2010/05/04(火) 06:40:27231デフォルトの名無しさん
2010/05/04(火) 07:03:36 MOVE.L D0,2(A0)
こんな形に近くて美しく見えなくもない。
こんな形に近くて美しく見えなくもない。
232デフォルトの名無しさん
2010/05/04(火) 08:18:42 アセンブラじゃなくてC言語をやりたいんですが
233デフォルトの名無しさん
2010/05/04(火) 13:25:18 はい
234デフォルトの名無しさん
2010/05/04(火) 16:26:42 はい
235デフォルトの名無しさん
2010/05/04(火) 23:44:37236デフォルトの名無しさん
2010/06/02(水) 17:54:13 教えてください。
gccで画面に直線描くのはどうやるのですか。
私は、今春定年退職した暇人で、c言語入門者です。
よろしくお願いします。
gccで画面に直線描くのはどうやるのですか。
私は、今春定年退職した暇人で、c言語入門者です。
よろしくお願いします。
237デフォルトの名無しさん
2010/06/02(水) 18:38:59 環境による
共通のやり方は無い
共通のやり方は無い
238デフォルトの名無しさん
2010/06/02(水) 19:06:32239デフォルトの名無しさん
2010/06/03(木) 08:28:30240デフォルトの名無しさん
2010/06/03(木) 13:29:17 括弧つけたほうが視認性が上がると思ってる場合は無駄でもつけてる
三項演算子とかreturnとか
三項演算子とかreturnとか
241デフォルトの名無しさん
2010/06/03(木) 14:20:17 returnに括弧って、タイプミスしたときに別名の関数と誤認されるからしないほうがいいって言われた。
242デフォルトの名無しさん
2010/06/03(木) 15:12:23 sizeof() は誤認されないか?
243デフォルトの名無しさん
2010/06/03(木) 15:16:32 sizeof も基本はいらないけど、どうしても必要な場合が多いからなあ
244デフォルトの名無しさん
2010/08/26(木) 16:58:39 C言語がしたいです……
ttp://img.mag2.com/editor/taiatari/080625/no2_m1_larg.jpg
ttp://img.mag2.com/editor/taiatari/080625/no2_m1_larg.jpg
245デフォルトの名無しさん
2010/08/26(木) 20:33:05 sizeof の括弧は要る場合の方が多いだろ
246デフォルトの名無しさん
2010/09/05(日) 03:40:34 皆さんこんにちわ!C言語初心者です。よろしくお願いします。いきなりの質問で
すみません!C言語標準ライブラリィ関数を例題を示して説明している本は何かあり
ますか?教えてください。
すみません!C言語標準ライブラリィ関数を例題を示して説明している本は何かあり
ますか?教えてください。
247デフォルトの名無しさん
2010/09/06(月) 23:58:20248デフォルトの名無しさん
2010/09/16(木) 03:24:55 標準ライブラリすべてを網羅しているとなると、H&Sしかないのでは?
というか、K&Rで不満なら、H&Sしかないような気がする。
あとはもう少し分野を特定してくれれば、適切な本があるかも。
というか、K&Rで不満なら、H&Sしかないような気がする。
あとはもう少し分野を特定してくれれば、適切な本があるかも。
249デフォルトの名無しさん
2010/11/26(金) 13:20:22 C言語ならオレに聞けPart74 こちらに引っ越しました。
250デフォルトの名無しさん
2011/01/23(日) 19:37:49 すいません。コンパイルしようと思ったらvcvers32が外部と内部で実行できません。って
出てきたんですけど・・・・どうすればいいんですか?
出てきたんですけど・・・・どうすればいいんですか?
251デフォルトの名無しさん
2011/01/24(月) 08:13:50 諦める
252 ◆nullpop./c
2011/01/27(木) 20:01:49 誰か構ってくれ〜 ゚∩ :ノノ ゚ し′
,,------ 、 ノノ ∪ ∩
/: ____▽,,,,,,_ヽ 。:∪・ ⊂ヽ ノノ :∩
} i:ェェヮi ト.ェェ:-i { /⌒Y⌒\ プ :):) じ :ノノ 。
ヾ::/イ__l丶 r'1ノ ノ ) じ :∩ 。 ( (
.}::l: ゝ--イ l:: {^\ビチグソ | . ヽヽ ヽj
ト!;_`二´_,,;!イ| | ノ :| ∩ じ
| |__三___| |_/| | ノノ ∩ :∩
| | ヽ| ト' | |/^ヽ じ :ノノ ∵ :ヽヽ
| | | |_/ ヽ__人_ノ ∪ し′
⊆, っ とーっ
,,------ 、 ノノ ∪ ∩
/: ____▽,,,,,,_ヽ 。:∪・ ⊂ヽ ノノ :∩
} i:ェェヮi ト.ェェ:-i { /⌒Y⌒\ プ :):) じ :ノノ 。
ヾ::/イ__l丶 r'1ノ ノ ) じ :∩ 。 ( (
.}::l: ゝ--イ l:: {^\ビチグソ | . ヽヽ ヽj
ト!;_`二´_,,;!イ| | ノ :| ∩ じ
| |__三___| |_/| | ノノ ∩ :∩
| | ヽ| ト' | |/^ヽ じ :ノノ ∵ :ヽヽ
| | | |_/ ヽ__人_ノ ∪ し′
⊆, っ とーっ
253 ◆nullpop./c
2011/05/03(火) 18:33:18.02 コンパイラ(1/4)
コンパイラは最適化をかけることができ
-O1 -O2 -O3などでその意味あ変える。
-O1 速度
-O2 最適
-O3 強すぎ
最適化はループ内定数の外し
計算の定数化
無駄な関数の削除
を行う
コンパイラは最適化をかけることができ
-O1 -O2 -O3などでその意味あ変える。
-O1 速度
-O2 最適
-O3 強すぎ
最適化はループ内定数の外し
計算の定数化
無駄な関数の削除
を行う
254天使 ◆uL5esZLBSE
2011/07/03(日) 08:27:15.54 2011年になっても未だにJAVA使い続けてる奴ってさ
仕事で仕方なくならわかるけど
家でもJAVAやってるなら本当にバカだよね。哀れ
死ねゴミ
仕事で仕方なくならわかるけど
家でもJAVAやってるなら本当にバカだよね。哀れ
死ねゴミ
255 ◆nullpop./c
2011/07/03(日) 22:54:55.93 ↑
言語厨って哀れだな
言語厨って哀れだな
256デフォルトの名無しさん
2011/07/11(月) 12:48:19.74 JavaScriptをやってる奴も市ねゴミなんだな
258デフォルトの名無しさん
2012/06/26(火) 10:04:34.66259デフォルトの名無しさん
2012/08/27(月) 04:24:38.98 #define ARRAY_SIZE 8
#include <stdio.h>
int main(int argc, char *argv[])
{
char a;
int mask, i;
int c[ARRAY_SIZE] = {128, 64, 32, 16, 8, 4, 2, 1};
switch(argc) {
case 2:
a = *argv[1];
printf("%02Xh\n", a);
break;
default:
fprintf(stderr, "bits a\n");
exit(0);
}
for(i = 0; i < ARRAY_SIZE; i++) {
mask = c[i];
if( (a & mask) == mask ) {
printf("1");
} else {
printf("0");
}
}
return 0;
}
#include <stdio.h>
int main(int argc, char *argv[])
{
char a;
int mask, i;
int c[ARRAY_SIZE] = {128, 64, 32, 16, 8, 4, 2, 1};
switch(argc) {
case 2:
a = *argv[1];
printf("%02Xh\n", a);
break;
default:
fprintf(stderr, "bits a\n");
exit(0);
}
for(i = 0; i < ARRAY_SIZE; i++) {
mask = c[i];
if( (a & mask) == mask ) {
printf("1");
} else {
printf("0");
}
}
return 0;
}
260デフォルトの名無しさん
2012/08/27(月) 04:32:43.10 >>259
#include <stdlib.h>を追加
#include <stdlib.h>を追加
261デフォルトの名無しさん
2012/09/05(水) 06:18:48.16 D:\work>bits "&"
26h
00100110
26h
00100110
262デフォルトの名無しさん
2013/07/17(水) NY:AN:NY.AN char a[6];
a[i]のアドレスは、a + i
a[i]
↓
*( a + i )
char a[6][6];
a[i][j]のアドレスは、*( a + i ) + j
a[i][j]
↓
*( a[i] + j )
↓
*( *(a + i) + j )
a[i]のアドレスは、a + i
a[i]
↓
*( a + i )
char a[6][6];
a[i][j]のアドレスは、*( a + i ) + j
a[i][j]
↓
*( a[i] + j )
↓
*( *(a + i) + j )
263デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.AN j[i[a]]
264デフォルトの名無しさん
2014/03/09(日) 22:36:32.65 Downloads: approx. 900kb
Auto C 3.6.58 Current version
Version 3.6.58 - February 25, 2014:
http://autoc.wolosoft.com/verhist.html
Auto C 3.6.58 Current version
Version 3.6.58 - February 25, 2014:
http://autoc.wolosoft.com/verhist.html
265デフォルトの名無しさん
2014/05/10(土) 11:15:02.11ID:ejXJmmlt #include <stdio.h>
int main(void)
{
typedef int * INT_POINTER;
INT_POINTER a, b;
int m, n;
a = &m;
b = &n;
*a = 2;
*b = 1000;
printf("%d\n%d\n", m, n);
return 0;
}
int main(void)
{
typedef int * INT_POINTER;
INT_POINTER a, b;
int m, n;
a = &m;
b = &n;
*a = 2;
*b = 1000;
printf("%d\n%d\n", m, n);
return 0;
}
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- サナエノミクスについて力説 積極的な財政出動で「所得増える 消費マインド上がる 税収増える」片山さつき財務大臣 ★3 [少考さん★]
- 中国軍機のレーダー照射1週間 駆け引き続く 中国、米のレッドライン模索 日本、米以外の同志国とも連携探る 米は対立から距離置く★2 [ぐれ★]
- 鈴木農相「おこめ券はお米しか買えないわけではない。例えば卵、味噌、しょうゆ、こうした購入に利用可能」 ★4 [Hitzeschleier★]
- 山里亮太、フィリピンに子ども食堂を建設 「偽善者」「日本の子どもを助けるべき」の声があっても活動を続ける理由 [Anonymous★]
- 【芸能】粗品、日本テレビに苦言 客のレベルが「かなり低い。あいつら分かってない」「拍手したいだけやねん」 [冬月記者★]
- 橋下徹氏「総理なら岡田さんに何を聴かれても耐えてほしかった」 高市首相の台湾有事めぐる答弁に# [jinjin★]
- 女の子ってマッサージされてる時にオナラしたくなったらどうすんの?
- この時期にJKじゃないのにミニスカ奴ってメンヘラ率何%??
- 君たちのクリスマスの予定
- イヨォ~!!チンポチンポチンポ♪
- フランダースの犬を見たんだが
- この女がいいねと君が言ったから12月24日はレイプ記念日
