C言語なら俺に聞け(入門編)Part 116
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2013/06/14(金) 20:22:05.73★前スレ
C言語なら俺に聞け(入門編)Part 115
http://toro.2ch.net/test/read.cgi/tech/1368444993/
★過去スレ
http://makimo.to:8000/cgi-bin/search/search.cgi?q=%82b%8C%BE%8C%EA%82%C8%82%E7%89%B4%82%C9%95%B7%82%AF&andor=AND&sf=0&H=&view=table&D=tech&shw=5000
★教えて欲しいのではなく宿題を丸投げしたいだけなら
↓宿題スレ↓へ行ってください。
C/C++の宿題片付けます 164代目
http://toro.2ch.net/test/read.cgi/tech/1370255305/
★C++言語については避けてください。C++対応明記スレへどうぞ。
★分からない事をなるべく詳しく書いて下さい。
★ソースコードを晒すと答えやすくなるかもしれません。
# 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること。
# サイズが大きい場合はアップローダ等を利用してください。
http://codepad.org/C/C++の宿題片付けます 165代目
http://ideone.com/
★開発環境や動作環境も晒すと答えが早いかもしれません。
★質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。
0041デフォルトの名無しさん
2013/06/15(土) 20:18:22.780042デフォルトの名無しさん
2013/06/15(土) 20:20:27.78できないの?
0043デフォルトの名無しさん
2013/06/15(土) 20:21:05.81berak; は出来ないよ
break; なら出来るけど
0044デフォルトの名無しさん
2013/06/15(土) 20:21:49.84そうでした....すいません。
continue文が無いのとあるのでは便利さは格段に違いますかね?
continue使いたいんですけど使いどころが分からなくて。
0045デフォルトの名無しさん
2013/06/15(土) 20:23:25.88forでもwhileでもbreak, continue両方使えるけど。
0046デフォルトの名無しさん
2013/06/15(土) 20:27:41.03forでcontinueを使ったときの意味はご存知か?
0047デフォルトの名無しさん
2013/06/15(土) 20:28:30.41breakとcontinueの違いってなんですかね?
一緒じゃないですか?
処理をしないんですから。
0048デフォルトの名無しさん
2013/06/15(土) 20:30:24.500049デフォルトの名無しさん
2013/06/15(土) 20:31:49.59>>40 >>44 を見てると機能の差じゃなくて有る無しを気にしてるように見えるけど。
0050デフォルトの名無しさん
2013/06/15(土) 20:35:08.93berakにしてましたw
ただcontinueもあったことに築き不図
どう違うんだろうかと思っただけです。
そこらへん触れてなくてすいません。
0051デフォルトの名無しさん
2013/06/15(土) 20:58:25.28何もしない
for (i=0; ; i++)
break;
無限ループ
for (i=0; ; i++)
continue;
0052デフォルトの名無しさん
2013/06/15(土) 21:14:20.310053デフォルトの名無しさん
2013/06/15(土) 21:37:35.37そんでアホみたいにネスト深くしてくの
0054デフォルトの名無しさん
2013/06/15(土) 22:05:37.550055デフォルトの名無しさん
2013/06/15(土) 22:12:47.070056デフォルトの名無しさん
2013/06/15(土) 22:55:41.34作りたいんですがVC++かmfcで作るとどういう命令を使うか
ヒントください。
0057デフォルトの名無しさん
2013/06/15(土) 22:57:27.89DirectSoundを調べると良い
単にwavファイルを作れればいいのなら
普通のファイル操作関数とsinでおk
0059デフォルトの名無しさん
2013/06/15(土) 23:03:42.390060片山博文MZパンク ◆0lBZNi.Q7evd
2013/06/15(土) 23:04:13.060061デフォルトの名無しさん
2013/06/15(土) 23:27:33.390062デフォルトの名無しさん
2013/06/16(日) 04:59:22.309x系現役乙
0063デフォルトの名無しさん
2013/06/16(日) 10:36:41.28BoehmGC
0064デフォルトの名無しさん
2013/06/16(日) 15:19:28.140065デフォルトの名無しさん
2013/06/16(日) 15:21:50.08ないよ。
0066デフォルトの名無しさん
2013/06/16(日) 15:31:01.99全く使われないから、手抜きされてる
0067デフォルトの名無しさん
2013/06/16(日) 15:33:40.58インラインアセンブラでもできるんじゃないの?
0068デフォルトの名無しさん
2013/06/16(日) 15:43:22.58もう存在自体を忘れた方がいい
0069デフォルトの名無しさん
2013/06/16(日) 23:41:49.322chに書き込むプログラム作ったんですがアク禁なんで書き込めない。
0070デフォルトの名無しさん
2013/06/16(日) 23:58:49.840071デフォルトの名無しさん
2013/06/17(月) 00:06:06.78それに対する対処とかしてるんですか?2chって。
0072デフォルトの名無しさん
2013/06/17(月) 00:10:52.33何回チャレンジしても書き込めません。
そういう対策してるんですか?2chでは。
今は携帯からですが。
0073デフォルトの名無しさん
2013/06/17(月) 00:24:44.270074デフォルトの名無しさん
2013/06/17(月) 00:39:58.97なるほどー
荒らされないように考えてるんだな2chも。
0075デフォルトの名無しさん
2013/06/17(月) 15:07:41.89なんたらかんたら
} while(0);
こんなんなんか意味あるんすか?
0076デフォルトの名無しさん
2013/06/17(月) 15:32:48.17PHPユーザーが想定する優れたCプログラマ、には意味があるらしい
http://php.net/manual/ja/control-structures.do.while.php
俺はCとPythonな人間なんで、意味なんか見いだせないけどね
0077デフォルトの名無しさん
2013/06/17(月) 15:44:03.58#define XXX() do { 複文 } while(0)
こう書くと
if (cond) XXX(); else ・・・;
if (cond) {XXX();} else {・・・;}
どっちの形で書かれても動く。
0078デフォルトの名無しさん
2013/06/17(月) 15:55:04.63goto 禁止対策
0079デフォルトの名無しさん
2013/06/17(月) 15:56:55.670080デフォルトの名無しさん
2013/06/17(月) 16:06:27.37thx
goto回避という事は、シーケンスな処理の場合のエラーとかですね?
do {
if(処理1()==FAIL) break;
if(処理2()==FAIL) break;
if(処理x()==FAIL) break;
} while(0);
てな感じかな?
処理に待ちが入る場合はcallback関数使うと思うので、あまり出番はないかもしれないですね。
マイコン組込みでは有用かも?
0081デフォルトの名無しさん
2013/06/17(月) 16:07:10.90do { ... } while(0) で囲んだこともあった。 が、今は素直に { } で囲んでるな
0082デフォルトの名無しさん
2013/06/17(月) 16:56:54.99thx 御礼が抜けました。 PHPという事で誤爆かと思いました w
goto回避だけで無く、処理を通過した最後のComplete()処理が目玉という事ですね。
0083デフォルトの名無しさん
2013/06/18(火) 21:30:45.91#include<stdio.h>
void abc(int x,char y);
int main(void)
{
char str[100];
}
void abc(int x,char y)
{
str[x]=y;
}
配列の受け渡しは引数が面倒臭いので
省略したいです。
0084デフォルトの名無しさん
2013/06/18(火) 21:34:47.030085デフォルトの名無しさん
2013/06/18(火) 21:37:50.07その方法がありましたか。
ありがとうございます。
0086デフォルトの名無しさん
2013/06/18(火) 21:48:16.870087デフォルトの名無しさん
2013/06/19(水) 01:13:46.89どこが面倒だって?
static void abc(int x, char y, char * str)
{
str[x] = y;
}
0088デフォルトの名無しさん
2013/06/19(水) 01:53:23.82> 配列の受け渡しは引数が面倒臭い
ttp://ideone.com/MYrF6V
0089デフォルトの名無しさん
2013/06/19(水) 10:17:22.66うわぁ、めんどくさい奴〜
0090デフォルトの名無しさん
2013/06/19(水) 19:09:20.14グローバル変数とか死ねばいいのに
0091デフォルトの名無しさん
2013/06/19(水) 19:51:19.78abc()=3;
int i;
i=abc();
こんな感じです。
配列は両側で代入できるから関数では無理ですか?
0092デフォルトの名無しさん
2013/06/19(水) 19:52:33.61C++なら戻り値を参照にすればできる
ポインタを返して
*abc() = 3;
int i;
i = *abc();
とするのであればCでも可能
0093デフォルトの名無しさん
2013/06/19(水) 19:56:19.84ttp://ideone.com/ewvA9A
これくらいしか思いつかん
0094デフォルトの名無しさん
2013/06/19(水) 19:57:49.830095デフォルトの名無しさん
2013/06/19(水) 20:03:40.600096デフォルトの名無しさん
2013/06/19(水) 20:13:52.31ttp://ideone.com/CoipE7
こういうことか
0097デフォルトの名無しさん
2013/06/19(水) 20:18:22.43#define abc() (*f())
0098デフォルトの名無しさん
2013/06/19(水) 20:24:04.42ああ、関数のカッコの方が * よりも優先度が高いのだったか。
ttp://www.bohyoh.com/CandCPP/C/operator.html
それならそれでいいね。
0099デフォルトの名無しさん
2013/06/19(水) 20:25:57.36ttp://ideone.com/BtfEbS
0100デフォルトの名無しさん
2013/06/19(水) 20:27:41.10配列の名前を入力
str
型を入力
int
要素数
10
作成しました int str[10]
無理ですか?
0101デフォルトの名無しさん
2013/06/19(水) 20:27:51.66それでいい、じゃなくてそうじゃないといけない
優先順位の問題があったとしても (*(f())) としないと
後置インクリメントが意図しない動作を起こすから
0102片山博文MZパンク ◆0lBZNi.Q7evd
2013/06/19(水) 20:46:06.00構造体配列に名前や型のデータを保存、実データはmallocで確保
0103デフォルトの名無しさん
2013/06/19(水) 20:48:59.95どうやって使うつもりなの?
0104デフォルトの名無しさん
2013/06/19(水) 20:50:32.510105デフォルトの名無しさん
2013/06/19(水) 20:55:01.090106デフォルトの名無しさん
2013/06/19(水) 20:57:32.10関係あるの?
0107デフォルトの名無しさん
2013/06/19(水) 21:00:40.05なるほど。>>96はabc()++;するとコンパイルエラーになる。うかつだった。
ありがとう。
修正
ttp://ideone.com/n8G9Z7
0108デフォルトの名無しさん
2013/06/19(水) 21:02:03.57本当にCが必要なのかを慎重に検討すべき
0109デフォルトの名無しさん
2013/06/19(水) 21:02:31.24素人はマクロに手を出しちゃいけないよという実例
0110デフォルトの名無しさん
2013/06/19(水) 21:37:42.53配列とほぼ同等なもの(ポインタ+メモリ確保)を作ることはできる。
厳密な意味で配列とイコールなものをランタイムには作れない。
0111デフォルトの名無しさん
2013/06/19(水) 21:44:27.02構文解析がんばれ
0112デフォルトの名無しさん
2013/06/19(水) 21:59:45.83あるじゃん
0113デフォルトの名無しさん
2013/06/19(水) 22:27:02.72こんな感じだろうか
ttp://ideone.com/2iRLeD
0114デフォルトの名無しさん
2013/06/19(水) 23:55:30.76array[n] = *(array + n)を利用すれば
配列っぽいものを動的に作れる
0116デフォルトの名無しさん
2013/06/20(木) 03:22:40.21main関数の中で宣言したaという変数がある場合
main関数の中で両方を別ものとして
読み書きするにはどうすればいいですか?
0117デフォルトの名無しさん
2013/06/20(木) 03:49:44.590118デフォルトの名無しさん
2013/06/20(木) 03:50:58.630119デフォルトの名無しさん
2013/06/20(木) 04:21:29.15スレ違い。
0120デフォルトの名無しさん
2013/06/20(木) 07:30:58.80Cだとできないので名前を変えよう
C++なら::aが外、aが中
0121デフォルトの名無しさん
2013/06/20(木) 08:12:38.62int a;
int* pa = &a;
int main(){
int a;
*pa = 1:
a = 2;
...
0122デフォルトの名無しさん
2013/06/20(木) 10:33:57.680123デフォルトの名無しさん
2013/06/20(木) 14:36:08.660124デフォルトの名無しさん
2013/06/20(木) 15:42:12.760125デフォルトの名無しさん
2013/06/20(木) 15:47:45.180126デフォルトの名無しさん
2013/06/20(木) 15:56:48.320128デフォルトの名無しさん
2013/06/20(木) 18:06:49.040129デフォルトの名無しさん
2013/06/20(木) 18:57:17.500130デフォルトの名無しさん
2013/06/20(木) 22:56:57.470131デフォルトの名無しさん
2013/06/21(金) 03:34:14.13馬と鹿の区別をつけられない奴のことだと最近知った俺だった
0132デフォルトの名無しさん
2013/06/21(金) 11:15:17.08ttp://www.ioccc.org/2006/toledo2/
0133デフォルトの名無しさん
2013/06/21(金) 15:36:45.64http://engawa.2ch.net/test/read.cgi/poverty/1371785765/l50
0134デフォルトの名無しさん
2013/06/21(金) 23:26:53.830135デフォルトの名無しさん
2013/06/22(土) 00:54:36.090136デフォルトの名無しさん
2013/06/22(土) 00:57:52.11見た目が違う
呼び方が違う
文字コードによっては別々に割り当てられてるので全く別の文字
0137デフォルトの名無しさん
2013/06/22(土) 01:03:30.970138デフォルトの名無しさん
2013/06/22(土) 02:37:08.14サンプル2ではエラーが出るのですが、サンプル1でエラーが出ないのはどうしてでしょうか。
よろしくお願いします。
●サンプル1
#include <stdio.h>
int a = 10;
int a;
int main(void)
{
return 0;
}
●サンプル2
#include <stdio.h>
int a = 10;
int a = 20;
int main(void)
{
return 0;
}
0139デフォルトの名無しさん
2013/06/22(土) 02:48:56.86まずエラーを書こう
0140138
2013/06/22(土) 03:03:03.46すみません。以下の様なエラーが出ます。
> 'a' : 再定義されています。2 回以上初期化されています。
> 'a' の宣言を確認してください。
サンプル1では再定義と言われないのは何故なのか気になりました。
よろしくお願いします。
■ このスレッドは過去ログ倉庫に格納されています