C言語なら俺に聞け(入門編)Part 85
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2011/05/30(月) 06:21:04.32★前スレ
C言語なら俺に聞け(入門編)Part 84
http://hibari.2ch.net/test/read.cgi/tech/1305216054/
★過去スレ
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++の宿題片付けます 148代目
http://hibari.2ch.net/test/read.cgi/tech/1305867431/
★C++言語については避けてください。C++対応明記スレへどうぞ
★分からない事をなるべく詳しく書いて下さい。
★ソースコードを晒すと答えやすくなるかもしれません。
# 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること
# サイズが大きい場合は宿題スレのアップローダ等を利用してください
★開発環境や動作環境も晒すと答えが早いかもしれません。
★質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。
★ぬるぽ。
長くなりそうなコードはcodepadに貼り付けてもいいでしょう
http://codepad.org/
0002デフォルトの名無しさん
2011/05/30(月) 07:44:54.020003デフォルトの名無しさん
2011/05/30(月) 07:57:28.280004992
2011/05/30(月) 10:38:42.31>994
ありがとうございます
参考にします
0005デフォルトの名無しさん
2011/05/30(月) 17:37:42.02http://twitter.com/#!/BrightGenerous/status/73926671329271808
0006デフォルトの名無しさん
2011/05/30(月) 18:18:22.19ヘボが書いたものは長大で遅くてバグだらけ
出来る人が書いたものを使ったほうが早くなるのは当然
0007デフォルトの名無しさん
2011/05/30(月) 18:28:41.09性能差は高々定数倍。
アルゴリズムの選択を間違えるとオーダーで遅くなる場合があるから
そういうこともある。
0008デフォルトの名無しさん
2011/05/30(月) 18:36:47.990009デフォルトの名無しさん
2011/05/30(月) 19:12:52.68個人的にはiccよりJavaが速かったことは無いわ。
0010デフォルトの名無しさん
2011/05/30(月) 19:34:45.73longjumpと言う手もないではないのですが、
ろくなもんじゃないので大人しくreturnで済ますのが無難です。
0012デフォルトの名無しさん
2011/05/30(月) 19:38:10.84なるほどありがとうございました!
0013デフォルトの名無しさん
2011/05/30(月) 20:27:26.69プロトタイプ宣言すれば別のファイルからでも関数呼び出せますよね?
ポインタを使う意味ってなんですか
0014デフォルトの名無しさん
2011/05/30(月) 20:34:02.17実行時に呼び出す関数変えられるじゃん。
0015デフォルトの名無しさん
2011/05/30(月) 20:37:34.460016デフォルトの名無しさん
2011/05/30(月) 20:37:50.93関数ポインタを使えば、関数の名前を知らなくても関数を呼び出せるでしょ。
例えば GUI ライブラリなんかで、ボタンを押した時の処理を指定する時に
関数ポインタが無いと困る。
GUI ライブラリの側で予めコールバック関数の名前を決めておいて、
ライブラリのユーザはその名前で関数を作るという事も出来るけど、
その方法だと、同じボタンを複数作りたい時に破綻する。
0017デフォルトの名無しさん
2011/05/30(月) 20:55:10.010019デフォルトの名無しさん
2011/05/30(月) 22:21:35.870020デフォルトの名無しさん
2011/05/30(月) 22:41:20.430021デフォルトの名無しさん
2011/05/31(火) 20:56:08.12なにかおすすめな参考書でも教えていただけないでしょうか。
0022デフォルトの名無しさん
2011/05/31(火) 21:10:12.25例えばbig appleという文字列がありますよね?
gとaの間の文字は何ですか?
0023デフォルトの名無しさん
2011/05/31(火) 21:16:54.91アルゴリズムとデータ構造の勉強
0024デフォルトの名無しさん
2011/05/31(火) 22:03:23.52スペースキーを押したらスペース、タブキーを押したらタブ
0025デフォルトの名無しさん
2011/05/31(火) 22:20:41.99空白ってことか。
改間って何ですか?
0027デフォルトの名無しさん
2011/05/31(火) 22:28:26.51自分で何か作るとよい。
「C言語 入門書の次に読む本 [改訂新版]」
「C言語によるオブジェクト指向プログラミング入門」
おすすめです。
0028デフォルトの名無しさん
2011/05/31(火) 22:36:25.57>>27
教えていただきありがとうございます。
アルゴリズムの本はもっているのでそれを読みつつ紹介してもらったので勉強をしようと思います。
0029デフォルトの名無しさん
2011/05/31(火) 23:57:29.01http://bellard.org/jslinux/
で
#include <tcclib.h>
main()
{
putchar(' ');
printf("%d", (int)' ');
}
をクリップボードに貼りつけて
tcc /dev/clipboard
でコンパイルして
./a.out
で実行したら
32
ってでた
0030デフォルトの名無しさん
2011/06/01(水) 06:43:24.260031デフォルトの名無しさん
2011/06/01(水) 06:58:52.150032デフォルトの名無しさん
2011/06/01(水) 16:26:44.26どうすればいいですか
0033デフォルトの名無しさん
2011/06/01(水) 17:15:31.28一杯になったら出しちゃえば?
0035デフォルトの名無しさん
2011/06/01(水) 20:10:01.35キーボードからの小数の入力を受け付け→その値を出力
というコードを書いていましたが、出力結果が必ず0.000000になってしまいます。
解決方法が全く分かりません。協力お願いします。
#include <stdio.h>
int main(void)
{
double num;
printf("小数を入力してください。\n");
scanf("%1f", &num);
printf("%fが入力されました。\n", num);
return 0;
}
0036デフォルトの名無しさん
2011/06/01(水) 20:12:46.580037デフォルトの名無しさん
2011/06/01(水) 20:13:53.15↓
scanf("%lf", &num);
0038デフォルトの名無しさん
2011/06/01(水) 20:21:48.26解決しました。lと1読み間違えてましたw
ありがとうございました。
0039デフォルトの名無しさん
2011/06/01(水) 21:05:58.31こういう理不尽なバグを回避するためにフォント選んだ方がいいよ。
1とl、0とOの区別が付かないフォントもあるでの。
0040デフォルトの名無しさん
2011/06/01(水) 23:51:16.71戻り値に注目しないにしてもintでreturn 0するほうが書き方としてはいいですか?
0041デフォルトの名無しさん
2011/06/01(水) 23:56:42.17main()
{
bool i=1;
if(i==1)
puts("ok");
else
puts("no");
}
エラーでるんですけどなんでか教えてください
0042デフォルトの名無しさん
2011/06/01(水) 23:59:20.45エラーメッセージも読めない奴に教える意味は無い
0043デフォルトの名無しさん
2011/06/02(木) 00:01:45.07と
int main()
あたりで
0044デフォルトの名無しさん
2011/06/02(木) 00:05:12.17無視して 2ch に聞きに来るとかコンパイラが可哀想過ぎる
人としてどうなのよ
0045デフォルトの名無しさん
2011/06/02(木) 00:16:38.27誰も書き込んでないから返事してやるよ
別に変じゃないとおもうぞ ってか俺もvoid型でもreturn いれている
まぁ人によってはいらないっていうヤツもいるだろうが、
そこで関数を終了し、処理を返しているってはっきり記述できるし
特定条件下で途中で処理返す時もreturn書くなら、終わりにも書いた方が自然だろ。
int型で return 0とかにするかは勝手にしろ。
いろいろ言語の細かいところに行くとどっちがいいとかあるかもしらんだが
そんな事で一々悩むつもりない。
自分だけで使うなら自分がわかればいい。
0046デフォルトの名無しさん
2011/06/02(木) 01:45:52.28return ()とか?
0047デフォルトの名無しさん
2011/06/02(木) 01:59:53.060048デフォルトの名無しさん
2011/06/02(木) 06:13:54.82なぜ括弧をつける
0049デフォルトの名無しさん
2011/06/02(木) 10:24:26.98return;
0050デフォルトの名無しさん
2011/06/02(木) 17:22:05.870051デフォルトの名無しさん
2011/06/02(木) 19:27:45.27・あるといい
関数にプルダウンでアクセスできる
0052デフォルトの名無しさん
2011/06/02(木) 19:34:31.41何が原因なんですかね。
0053デフォルトの名無しさん
2011/06/02(木) 19:37:53.48前の関数の中のファイルがとじられてなかった
0054デフォルトの名無しさん
2011/06/02(木) 20:01:14.74道具に使われることは考えないほうがいいよ
0055デフォルトの名無しさん
2011/06/03(金) 02:27:48.15環境を書いてないね。
Windowsならvimで、linuxならvimかな。
BSDやmacもvimでいいとおもう。
0056デフォルトの名無しさん
2011/06/03(金) 20:17:33.43そのフォルダ内の情報ってどういうのがありますか?
0057デフォルトの名無しさん
2011/06/03(金) 21:16:40.200058デフォルトの名無しさん
2011/06/03(金) 22:19:01.670059デフォルトの名無しさん
2011/06/03(金) 22:36:14.22fprintfとかじゃなくて、結果を丸ごとテキストファイルに出力したいです。
プログラムはprogram.c
出力させたい空のファイルをprogram.txt
とします。
0060デフォルトの名無しさん
2011/06/03(金) 22:40:51.14>
0061デフォルトの名無しさん
2011/06/03(金) 22:42:47.62program.c program.txt >ですか?
良く分かりません・・・すいません。
0062デフォルトの名無しさん
2011/06/03(金) 22:46:40.65コマンドではなくリダイレクトでしたあばばばばあばbっばばばばばb
0063デフォルトの名無しさん
2011/06/03(金) 22:55:59.54使ってるOSとかコンパイラとか分かる?
0064デフォルトの名無しさん
2011/06/03(金) 22:56:27.13検索でfprintf引っかかり・・・うざすぎワロタ
0065デフォルトの名無しさん
2011/06/03(金) 22:59:14.570067デフォルトの名無しさん
2011/06/03(金) 23:07:21.86環境を書いてないね。
Windows だったら xyzzy の一択。これ、Linux や *BSD に移植してくれないかなあ。
mac のことはよく知らない。
0068デフォルトの名無しさん
2011/06/04(土) 00:33:20.75大阪にて北朝鮮系ヤクザが在特会に襲撃!!!!!!
http://www.youtube.com/watch?v=zL0jgbzOtUM
【パチンコ】年商4000億「ガイア」代表取締役 覚せい剤逮捕 パチンコ業界人「こんな時期に」と動揺&困惑
http://raicho.2ch.net/test/read.cgi/newsplus/1307057114/
パチンコを死守する北朝鮮系ヤクザとシャブ中社長!!!
0069デフォルトの名無しさん
2011/06/04(土) 01:35:58.190070デフォルトの名無しさん
2011/06/04(土) 02:46:04.60emacsと比べてそんなにいいの?
0071デフォルトの名無しさん
2011/06/04(土) 06:54:33.33エディタ内のカットバッファをGUIのクリップボードと分離して独立して扱えるのはemacsより気が利いているかもしれない。
emacsと違って、単にエディタだから単純には較べられないけどね。
0072デフォルトの名無しさん
2011/06/04(土) 07:12:48.70vi 類の方がまだマシ。
0073デフォルトの名無しさん
2011/06/04(土) 10:31:42.40おまい、emacs使ったこと無いだろ
0074デフォルトの名無しさん
2011/06/04(土) 10:37:35.800075デフォルトの名無しさん
2011/06/04(土) 17:53:31.06→つまり、ヘッダファイルはpublicなものしか書かないのが普通?
オブジェクト指向という考え方からすると使うべきじゃないね
ヘッダーファイルは複数の c のモジュール(コンパイル単位)で参照されるものだから、一つのコンパイル単位で完結する性質の static 変数/static 関数を記述する場所ではない。
0078デフォルトの名無しさん
2011/06/04(土) 19:03:13.26後者の場合正しく出ないんです・・・
何故ですか?
0079デフォルトの名無しさん
2011/06/04(土) 19:13:08.80配列のサイズと文字数が一緒になってたりしない?
0080デフォルトの名無しさん
2011/06/04(土) 19:15:00.08008175
2011/06/04(土) 19:40:52.49>static使ってるとそのオブジェクトを複数生成するのが不可能になるから
これは、どういう意味ですか?
>>77
つまり、staticはヘッダファイルに書くべきじゃないってことですか?
008277
2011/06/04(土) 20:32:07.19通常の使い方では static な変数/関数をヘッダに書くことはないと思います。
というか、>>77 で述べたとおりで、思いつかないのです。
0083デフォルトの名無しさん
2011/06/04(土) 21:24:26.19fgetsで読み込んだ場合
例えば
abc def
をchar*pがさすとき
strlen(p)はどうなりますか?
0084デフォルトの名無しさん
2011/06/04(土) 21:33:25.780085デフォルトの名無しさん
2011/06/04(土) 21:34:57.09自分でやってみて、それが思った事と違うなら相談してみたら?
0086デフォルトの名無しさん
2011/06/04(土) 21:39:32.12DFASD
sdfsd
dsd
fd
テキストファイルです
上から順番に
7
7
5
2
です。
全く分かりません・・・解析してください。
0087デフォルトの名無しさん
2011/06/04(土) 21:41:13.64読み込むテキストファイルの改行コードが CR+LF
fopen するときにバイナリモードで開いている
0088デフォルトの名無しさん
2011/06/04(土) 21:41:27.10改行が二文字でカウントされてるんだよ
0089デフォルトの名無しさん
2011/06/04(土) 21:42:05.50それじゃ分からない。ソースを一緒に晒してみて
0090デフォルトの名無しさん
2011/06/04(土) 21:48:41.97あぁなるほど。たぶんそれですね。
ただナル文字って配列の場合でもchar*の場合でも
strlenでは無視されるんですよね。助かります。
0091デフォルトの名無しさん
2011/06/04(土) 23:05:07.91突然コマンドを実行すると「コンパイル開始」の表示のままで止まるようになりました。
それまではきちんとプログラムが再生されていたのですが…
また、コマンドを実行する度「C言語を始めよう!」のフォルダ内に
TMPファイル(0バイト)が作成されるようになりました。
どのようにすれば元通りになるでしょうか?
0092デフォルトの名無しさん
2011/06/04(土) 23:06:09.35ヘッダファイルとは何か?
それが問いの答えになる。
調べてみよう。
0093デフォルトの名無しさん
2011/06/04(土) 23:11:30.99状況がよくわかりません。参考にした資料/URL を教えてください。
あと、今日日、LSI-C はちょっと古すぎます。別のコンパイラのほうがいいでしょう。gcc とか visual c++ とか、ちょっとふるいけれども borland c++5.5.1 とか。
0094デフォルトの名無しさん
2011/06/04(土) 23:26:33.18開発環境も付属だからそのまま使えるぞ。
試食版みたいな変な制限もないし。
0095デフォルトの名無しさん
2011/06/04(土) 23:26:34.27レスありがとうございます。導入に使ったHPは
http://www9.plala.or.jp/sgwr-t/detail/EnvSet.html
http://homepage3.nifty.com/aokura/phoebe/phoebe.htm です。
ちなみにborland c++5.5.1、本当は導入したかったのですが
DL箇所がうまく見つけられませんでした…
0096デフォルトの名無しさん
2011/06/04(土) 23:38:08.83レスありがとうございます。
今Turbo C 2.01について調べていたのですが、
これは日本語でも使えるのでしょうか?
英語のサイトが多くて導入が難しそうに見えたので…
0097デフォルトの名無しさん
2011/06/04(土) 23:50:01.22了解。
で、プログラムの「再生」という言い回しは普通しないので、状況が伝わってきません。
コンパイルはうまくいっていますか?
コンパイルの結果生成した .exe ファイルが実行できないということですか?
0098デフォルトの名無しさん
2011/06/04(土) 23:54:18.31関数を呼び出すほど変数のメモリを食うのですか?
0099デフォルトの名無しさん
2011/06/04(土) 23:57:30.90すみません、初心者なもので言葉が結構足りてなさそうですね…申し訳ないです。
コンパイルは開始と終了がきちんと出てますので、成功しています。
ただコマンドを実行すると開始表示をしたままで止まってしまいますので
まさしく仰られている通りの状態かと思います。
0100デフォルトの名無しさん
2011/06/05(日) 00:07:52.00最適化すると変数でメモリを食わなくなることがある
0101デフォルトの名無しさん
2011/06/05(日) 00:11:08.51Visual C++ 2010 Expressじゃだめなん?
0102デフォルトの名無しさん
2011/06/05(日) 00:13:49.75>>95 のリンクの人は現役のプログラマとは思えません。LSI-Cってwww
書かれていることが古く、ソースも下手クソ。参考にしないほうがいいです。
0103デフォルトの名無しさん
2011/06/05(日) 00:14:20.65ASCIIオンリーで一通りやってみたら?
日本語だってローマ字を使えば書けるんだし。
0104デフォルトの名無しさん
2011/06/05(日) 00:22:59.98>>102
実はスペックが足りないのか原因がよくわからないのですが、
DLが何度やっても完了されないのでそちらの利用を諦めたんです…
0105デフォルトの名無しさん
2011/06/05(日) 00:24:37.17そういうことを聞いてるんじゃなくて・・一般的な話です。
0106デフォルトの名無しさん
2011/06/05(日) 00:27:30.62最適化なしだとスタックに変数が割り当てられるといって欲しいのかな?
コンパイラ依存の...
0107デフォルトの名無しさん
2011/06/05(日) 00:28:08.510108デフォルトの名無しさん
2011/06/05(日) 00:30:32.08そうです。
0109デフォルトの名無しさん
2011/06/05(日) 00:31:48.26こういったムックの付録を利用したらどうでしょう。内容も初心者も対象にしていますし。
ttp://ec.nikkeibp.co.jp/item/books/188550.html
0110デフォルトの名無しさん
2011/06/05(日) 00:33:38.96一回PC再起動してから試してみたら
0111デフォルトの名無しさん
2011/06/05(日) 00:35:32.15Borland C++ Compiler 5.5 か
LCC-Win32 辺りが良いんじゃね?
後者はタダでは商用不可なんで注意な。個人使用なら無償だが。
0112デフォルトの名無しさん
2011/06/05(日) 00:41:19.280113デフォルトの名無しさん
2011/06/05(日) 00:41:46.080114デフォルトの名無しさん
2011/06/05(日) 00:42:45.860115デフォルトの名無しさん
2011/06/05(日) 00:48:22.24閉じる事がないから使いやすい。誤ったコマンドライン入れたらバグ起こすけど。
初心者はcygwinかvisualstudioがいいんじゃないかな?
エディタはメモ帳かtredpadで。
0116デフォルトの名無しさん
2011/06/05(日) 00:52:25.640117デフォルトの名無しさん
2011/06/05(日) 00:53:02.51これなら間違いはない。
0118デフォルトの名無しさん
2011/06/05(日) 01:03:19.490119デフォルトの名無しさん
2011/06/05(日) 01:10:38.540120デフォルトの名無しさん
2011/06/05(日) 01:25:13.610121デフォルトの名無しさん
2011/06/05(日) 01:27:31.91なんでDだけ大文字にしたの?
0122デフォルトの名無しさん
2011/06/05(日) 01:35:29.79コマンドを実行するってのは出来上がったexeを実行してるってことだろうか。
なら、永久ループしてるとか入力待ちで止まってるとかじゃないのかな
0123118
2011/06/05(日) 02:02:44.13違う。Dos攻撃のことじゃない。
OSのMS-DOSで勉強したらいいんじゃねってことだよ。
0124デフォルトの名無しさん
2011/06/05(日) 02:06:34.48ログインは出来ない
0125デフォルトの名無しさん
2011/06/05(日) 02:08:31.62攻撃は一般に、DoSと表記するしね
0126デフォルトの名無しさん
2011/06/05(日) 02:10:36.550127デフォルトの名無しさん
2011/06/05(日) 02:14:13.740128デフォルトの名無しさん
2011/06/05(日) 02:16:54.91前バージョンの 2008 でもいいし。
インストールはVCの該当スレで助けてもらって、
スタートラインに立てたらまたこっち来ればいいよ。
0129デフォルトの名無しさん
2011/06/05(日) 02:22:30.06何が言いたいんだよ。
0130デフォルトの名無しさん
2011/06/05(日) 02:23:43.89アスペか?
0131デフォルトの名無しさん
2011/06/05(日) 02:28:10.66そっちの方が心配だわ・・・
0133デフォルトの名無しさん
2011/06/05(日) 09:49:29.06どうやってもできない。
バッチファイルとか作ったりしたけどやっぱりできない。
誰か知恵を貸してくれ。
0134デフォルトの名無しさん
2011/06/05(日) 10:14:58.40--- test.cmd ---
start cmd.exe /c foo.exe
start cmd.exe /c bar.exe
0135デフォルトの名無しさん
2011/06/05(日) 11:36:52.28void show_size(『ここに任意の型の変数が取れるようにしたい』)
{
printf("%d", sizeof [引数に入れた変数]);
}
『 』に何て書けばいいのか調べてるんですが全然分からなくて・・・誰か教えてください。
0136デフォルトの名無しさん
2011/06/05(日) 11:46:37.54C言語だと関数では無理
マクロならそれっぽいのは可能
#define show_size(variable) printf("%d", sizeof(vairable))
0138デフォルトの名無しさん
2011/06/05(日) 12:13:24.83tredpad?
間違っていたらすいません。
treepadのことですか
0139デフォルトの名無しさん
2011/06/05(日) 13:31:13.79typo してるよ
0140デフォルトの名無しさん
2011/06/05(日) 13:55:06.58馬鹿発見
0141デフォルトの名無しさん
2011/06/05(日) 14:12:43.98terapad の typo だと思うよ。
0142デフォルトの名無しさん
2011/06/05(日) 15:42:50.59ありがとうございます!!
マクロって便利ですね。
0143デフォルトの名無しさん
2011/06/05(日) 16:43:02.63番号 成績
2001 85 2003 92
2002 90 → 2002 90
2003 92 2001 85
成績を並べ替えることはできるのですが番号を一緒に並べ替えることが出来ません・・・どなたか教えて頂けないでしょうか
0144デフォルトの名無しさん
2011/06/05(日) 16:49:11.200145デフォルトの名無しさん
2011/06/05(日) 16:50:44.122001 90 2002 92
2002 92 → 2001 90
2003 85 2003 85
訂正します、すみません
0146デフォルトの名無しさん
2011/06/05(日) 16:51:23.410147デフォルトの名無しさん
2011/06/05(日) 17:32:39.66このサイトのように、命令や仕様などがシンプルにまとめられているC言語の本はないでしょうか?
出来るなら、気軽に持ち運べる大きさだと嬉しいのですが
0148デフォルトの名無しさん
2011/06/05(日) 17:54:31.97PDF 版ならノート PC に入れても重量増加 0g
金ない人は K&R
0149デフォルトの名無しさん
2011/06/05(日) 18:27:35.090150デフォルトの名無しさん
2011/06/05(日) 18:42:08.22K&Rがよさそうだったのでいろいろ見てみます
>>149
印刷するには量が多いし、すぐにボロボロになってしまいそうなので
0151デフォルトの名無しさん
2011/06/05(日) 18:45:38.700152デフォルトの名無しさん
2011/06/05(日) 18:46:45.89HTMLのファイルをPCにコピーすれば良いんじゃない?
紙ベースのドキュメントはそろそろ止めましょう
0153デフォルトの名無しさん
2011/06/05(日) 18:52:58.280154デフォルトの名無しさん
2011/06/05(日) 18:54:30.62当方大学生でして、どうでもいい講義中に勉強するために何かあればな、と思いまして
もちろんノートPCはもってないです
0155デフォルトの名無しさん
2011/06/05(日) 19:50:40.610156デフォルトの名無しさん
2011/06/05(日) 20:36:37.20何を目指してるか知らないから、どこまで本気か分からないが、
プログラムを学ぼうとするなら、PC位は自分のツールとして使える様になってないと
0157デフォルトの名無しさん
2011/06/05(日) 20:51:51.610158デフォルトの名無しさん
2011/06/05(日) 21:00:35.59今なら4、5万で買えるだろ・・・
0159デフォルトの名無しさん
2011/06/05(日) 21:04:49.910160デフォルトの名無しさん
2011/06/05(日) 21:04:51.110161デフォルトの名無しさん
2011/06/05(日) 21:06:13.12HDDを換装してWindows7を入れればまだまだ使える
0162デフォルトの名無しさん
2011/06/05(日) 21:07:58.790163デフォルトの名無しさん
2011/06/05(日) 21:08:51.100164デフォルトの名無しさん
2011/06/05(日) 21:13:49.65Cも書けないようだとプログラマとしての素養が疑われる。
0165デフォルトの名無しさん
2011/06/05(日) 21:15:56.23大学で使う場合もあるからね
0166デフォルトの名無しさん
2011/06/05(日) 21:16:00.780167デフォルトの名無しさん
2011/06/05(日) 21:16:07.73long intを使わないとしたら、どのようにすればいいですか?
0168デフォルトの名無しさん
2011/06/05(日) 21:19:13.81自前で大きい整数を扱えるような関数等を作る
0169デフォルトの名無しさん
2011/06/05(日) 21:33:48.580170デフォルトの名無しさん
2011/06/05(日) 21:36:12.200171デフォルトの名無しさん
2011/06/05(日) 21:37:14.54を用意したとして
効率とかどうでもいいんで簡単な四則演算アルゴリズムを紹介して
0172デフォルトの名無しさん
2011/06/05(日) 21:37:18.66普段は紙と鉛筆で問題をとく物理屋なんだよ言わせるな恥ずかしい
0173デフォルトの名無しさん
2011/06/05(日) 21:43:11.340174デフォルトの名無しさん
2011/06/05(日) 21:55:12.29わざわざパソコンするために出かけるのか
0175デフォルトの名無しさん
2011/06/05(日) 21:55:53.14足し算、引き算からやったら
0176デフォルトの名無しさん
2011/06/05(日) 22:04:56.47どうすればいいですか
0177デフォルトの名無しさん
2011/06/05(日) 22:05:26.62http://hibari.2ch.net/test/read.cgi/tech/1301553333/668
http://codepad.org/PXA5JrGF
0178デフォルトの名無しさん
2011/06/05(日) 22:12:15.920179デフォルトの名無しさん
2011/06/05(日) 22:56:05.320180デフォルトの名無しさん
2011/06/05(日) 22:57:40.010181デフォルトの名無しさん
2011/06/05(日) 23:15:50.310182デフォルトの名無しさん
2011/06/06(月) 02:17:21.380183デフォルトの名無しさん
2011/06/06(月) 10:50:44.950184デフォルトの名無しさん
2011/06/06(月) 10:51:14.28この式が返す値の型はaの次元数によらず
一定ですか?
0185デフォルトの名無しさん
2011/06/06(月) 10:51:24.24宿題スレの前スレか前々スレにあったよ
0186デフォルトの名無しさん
2011/06/06(月) 10:52:01.76一定じゃない
0187デフォルトの名無しさん
2011/06/06(月) 10:57:14.320188デフォルトの名無しさん
2011/06/06(月) 11:00:04.03本にa[n]は*(a+n)の糖衣構文って書いてあったのですが、これだけだと正しくないですよね。
0189デフォルトの名無しさん
2011/06/06(月) 11:08:52.700190デフォルトの名無しさん
2011/06/06(月) 11:10:59.55次元数が違うってこういうことじゃないの?
int a[1];
int b[1][1];
0191184
2011/06/06(月) 11:27:32.21188=184です。次元数とはそういう意味です。
>>189
188に書いた糖衣構文はaの型がint以外でも成立します。問題はaの型ではないです。
0192デフォルトの名無しさん
2011/06/06(月) 11:27:49.52それはポインタでたどっても同じだろ。なにが聞きたいんだ??
0193デフォルトの名無しさん
2011/06/06(月) 11:33:01.34やっぱそうだよな、おまえら次元数の意味勘違いしてるのかと思った
int a[2][2];で
*(a + 1) + 1
したら型はint *だろ
0194デフォルトの名無しさん
2011/06/06(月) 11:34:04.26そっか。配列名はアドレスだからね(塚、変数名は全部アドレスでしょ)。
インクリメントすれば、その変数の型分アドレスがインクリメントされるだけじゃんww
そのアドレスの中身は、n番目の配列の中身と同じ。当たり前じゃんw
0195デフォルトの名無しさん
2011/06/06(月) 11:59:29.38書名はなんですか?
0196184
2011/06/06(月) 11:59:30.79正解です。>>186と同意見という事ですよね。>>188についてはどうでしょうか?
>>192、194
何も間違ってはいないですが、質問内容はもっと原始的な部分です。
0198デフォルトの名無しさん
2011/06/06(月) 12:13:31.910199デフォルトの名無しさん
2011/06/06(月) 12:21:53.73多次元配列においてもその糖衣構文には合致してるよ
お前が型の扱いを理解できてないだけで
0200デフォルトの名無しさん
2011/06/06(月) 12:27:27.070202デフォルトの名無しさん
2011/06/06(月) 15:26:05.57やはり、自分で覚えておくしかないんでしょうか?
0203デフォルトの名無しさん
2011/06/06(月) 15:27:19.62初心者は、stringやvectorでいいだろ。C++だがこっちのほうが簡単。
0204デフォルトの名無しさん
2011/06/06(月) 15:31:58.180205デフォルトの名無しさん
2011/06/06(月) 16:41:25.74環境依存だと思うが、規格票にはサイズを後から知る方法はどこにも見当たらない
ISO/IEC 9899:1999
0206デフォルトの名無しさん
2011/06/06(月) 16:42:29.05自分が要求したサイズ+アルファがあるのです
0207デフォルトの名無しさん
2011/06/06(月) 17:10:52.56どのくらいの程度のプログラムを
どのくらい同時実行できるのかな・・・
さっき永遠に+1した数を表示し続ける奴をどんどん動かしてみたけど
5つぐらい動かしたところでタスクバーに動いているプログラムの表示がちょっとだけ追いつかなくなったのを見て
怖くなってすぐやめた。
0208デフォルトの名無しさん
2011/06/06(月) 17:17:56.710209デフォルトの名無しさん
2011/06/06(月) 17:29:55.37では動かすプログラムが最大でどの位メモリ使うのか
知る方法とかありませんかね?
0210デフォルトの名無しさん
2011/06/06(月) 17:42:10.940211デフォルトの名無しさん
2011/06/06(月) 17:44:54.17任意のファイルを読み込めるようにmain()関数が引数を取るように
int main(int argc, char *argv[])
としたのですが、今まで上手く読み込めてたのに、ちょっとコマンドライン
をいじってしまってコンパイルされるものの実行できなくなりました。
実行した瞬間にコマンドラインが改行されるだけになりました・・・
どうしたらいいでしょう?
0212デフォルトの名無しさん
2011/06/06(月) 17:45:54.24日本語でおk
0213デフォルトの名無しさん
2011/06/06(月) 17:50:28.34任意のファイルから数字を読み込んで足し算を標準出力するという
プログラムが今まで出来たのに、コマンドラインいじって、できな
くなった。ちなみに同じプログラム。コンパイルはエラーなし。
0215デフォルトの名無しさん
2011/06/06(月) 17:58:09.97とか
<
とかコマンドライン入れまくってちょっとcygwinおかしくなったのかな?
とにかく引数が取れない・・・
0216デフォルトの名無しさん
2011/06/06(月) 18:00:16.13もうこれは有罪だろ。
0217211
2011/06/06(月) 18:03:59.07実行ファイル名はsample.txtです。sample.datでもいいです。
ただa sample.txtやa sample.datだと無理です。以前はこれでいけました。
a.exe samle.txt ならいけます。
何故でしょうか?高度すぎてわかりません。
0218デフォルトの名無しさん
2011/06/06(月) 18:03:59.500219デフォルトの名無しさん
2011/06/06(月) 18:19:49.01これいじったんだろ。
0220デフォルトの名無しさん
2011/06/06(月) 18:40:12.66どういうことですか?
というかリダイレクトのコマンドが>だか>>だか<だを
色々コマンドラインにファイル名と読み込みファイル
とあわせて打ち込んだりしたからおかしくなったと思
うけど直し方分からないwwww
0221デフォルトの名無しさん
2011/06/06(月) 18:54:10.32そんな思い込みは捨ててさっさといわれたことをやれ
0222デフォルトの名無しさん
2011/06/06(月) 18:58:12.29入力リダイレクトではa.exeは上書きされないが、
出力リダイレクトであるoutput.txtは実行のたびに上書きされる。
おそらくこれらの順番がめちゃくちゃになったんだろ。
もう一度コンパイルとsample.txtを用意してやり直すべし。
0223デフォルトの名無しさん
2011/06/06(月) 19:12:04.44頭良すぎ。
何でそんなすぐ原因わかるんだよ・・・
とりあえずリカバリーします。
リカバリーしてcygwinダウンロードしなおす。
0224デフォルトの名無しさん
2011/06/06(月) 19:23:42.210225デフォルトの名無しさん
2011/06/06(月) 19:25:48.83int main()
{
float a=7,b=3;
printf("x = 7\ny = 3\n");
printf("(1)""x / y = %.2f\n",a/b);
printf("(2)""x + y / 2 = %.0f\n",(a+b)/2);
printf("(3)""x ++ * y = %.0f\n",a++*b);
printf("(4)""x == y "" →7 == 3 =等しくない\n",a==b);
printf("(5)""x > y = 7 > 3\n",a>b);
printf("(6)""x % y = %.2f\n",a%b);
printf("(7)""(double) x / y = %f\n",(double)7/3);
printf("(8)""++ x * y = %.0f\n",++a*b);
printf("(9)""! ( x ! = y ) ""→ ! (7 ! = 3 ) = 等しくない\n");
printf("(10)"" x / y ! = 2 ""→7 / 3 ! = %.0f\n",a/b);
printf("何かキーを押してください\n");
getch();
printf("END\n");
return 0;
}
0226デフォルトの名無しさん
2011/06/06(月) 19:28:29.49>>225のprintf("(6)""x % y = %.2f\n",a%b); についてお聞きしたいのですが
x%yの計算結果を表示させたいのですが、何度コンパイルしても
""で閉じた以降の「a%d」でエラーが出ます。
この書き方は間違っているのでしょうか?色々調べて見ても
よくわかりませんでしたのでこちらに来ました。
是非お教えいただきたいです…
0227デフォルトの名無しさん
2011/06/06(月) 19:31:16.210228デフォルトの名無しさん
2011/06/06(月) 19:31:48.11書き間違い失礼しました。
0229デフォルトの名無しさん
2011/06/06(月) 19:36:56.620230デフォルトの名無しさん
2011/06/06(月) 19:38:11.25<なのか>なのかはっきりしてくれww
余計におかしくなる
0231デフォルトの名無しさん
2011/06/06(月) 19:56:57.42cygwinすげぇwwwww
0232デフォルトの名無しさん
2011/06/06(月) 20:05:33.26データに即座にアクセスできるという点で一緒じゃないんですか?
0233デフォルトの名無しさん
2011/06/06(月) 20:08:21.49辞書を引く時に、200ページ目に書いてあるよというのが配列
辞書を引く時に、「か」の項に書いてあるよというのがハッシュ
0234デフォルトの名無しさん
2011/06/06(月) 20:13:18.540235デフォルトの名無しさん
2011/06/06(月) 20:14:07.730236デフォルトの名無しさん
2011/06/06(月) 20:24:00.07ということは新たにintで数を宣言したほうがいいですかね?
0237デフォルトの名無しさん
2011/06/06(月) 20:45:44.08>>229
0239デフォルトの名無しさん
2011/06/06(月) 22:22:15.28どのように書くのが良いでしょうか?
ちなみにxとyの数値はプレイヤーが入力するのではなく
決められた数値となっています。
0240デフォルトの名無しさん
2011/06/06(月) 22:29:57.400241デフォルトの名無しさん
2011/06/06(月) 22:39:32.000242デフォルトの名無しさん
2011/06/07(火) 02:23:06.12ってなかったっけ?
逆ならあったんだけど
0243デフォルトの名無しさん
2011/06/07(火) 03:35:28.13ファイル構造体に入ってるよ
0244デフォルトの名無しさん
2011/06/07(火) 07:12:11.34fileno()じゃないの?
つーか、寧ろ逆方向こそ知らない。
0245デフォルトの名無しさん
2011/06/07(火) 18:11:35.37ヘッダとかマクロもわからん・・
0246デフォルトの名無しさん
2011/06/07(火) 18:23:31.760247デフォルトの名無しさん
2011/06/07(火) 18:48:24.11逆はfdopen()とかじゃね?
Winにあんのかは知らないけど。
0248デフォルトの名無しさん
2011/06/07(火) 21:36:05.46合計秒数に変換するプログラムを書きたいのですが
60秒を掛けていかないといけないから普通の加算じゃできませんよね?
どのように書けばよいでしょうか…
0249デフォルトの名無しさん
2011/06/07(火) 21:39:24.890250デフォルトの名無しさん
2011/06/07(火) 21:41:56.75普通の加算でいいよ
0251デフォルトの名無しさん
2011/06/07(火) 21:42:09.393600かけて
60かけて
0252デフォルトの名無しさん
2011/06/07(火) 21:50:44.12プログラムとかC言語以前の問題だろ
0253デフォルトの名無しさん
2011/06/07(火) 22:15:29.85皆さんレスありがとうございました。
私が色々勘違いしていたようです…お陰様で解決いたしました。
ちなみに上に書いたのと正反対の
パソコンから入力した秒数(1234567)を
1年2日3時間45分67秒 のように表記するソースコードを書きたいのですが
この場合どうしたらよいでしょうか。
0254デフォルトの名無しさん
2011/06/07(火) 22:16:39.26#include <stdio.h>
int main(void)
{
int a,b,c,d,e,f,g;
printf("秒単位の時間を入力してください。(7桁以上)\n");
scanf("%d %d %d %d %d %d %d\n",&a);
printf("%d年 %d日 %d時間 %d分 %d秒\n",a,b,c,d,e,f,g);
printf("何かキーを押して下さい\n");
getch();
printf("END\n");
return 0;
}
0255デフォルトの名無しさん
2011/06/07(火) 22:50:15.231分は60秒
1時間は3600秒
1日は86400秒
1年は31536000秒
あとはわかるな?
0256デフォルトの名無しさん
2011/06/07(火) 23:30:04.57strftime を使う
0257デフォルトの名無しさん
2011/06/07(火) 23:51:48.59その程度のことしかいえないなら黙ってろ
本当はできないくせに
0258デフォルトの名無しさん
2011/06/07(火) 23:56:27.120259デフォルトの名無しさん
2011/06/08(水) 00:12:03.21>>254
#include <stdio.h>
int main(void)
{
int a[5],b[5]={365*24*60*60,24*60*60,60*60,60,1};
int t,i;
printf("秒単位の時間を入力してください。(7桁以上)\n");
scanf("%d",&t);
for (i=1;i<5;i++) {
a[i]=t/b[i];
t%=b[i];
}
printf("%d年 %d日 %d時間 %d分 %d秒\n",a[0],a[1],a[2],a[3],a[4]);
printf("何かキーを押して下さい\n");
getch();
printf("END\n");
return 0;
}
0260デフォルトの名無しさん
2011/06/08(水) 02:17:04.92はい、本当はできません
0261デフォルトの名無しさん
2011/06/08(水) 03:36:00.39自然数上の関数Sが、以下のように再帰的に定義されている。
このSについての次の問いに答えよ。
S(0)=1, S(n)=6T( [n/2] ) + 8n
( [ n/2 ] はn/2の切捨て)
(1) S(n) = O(n^k)とはなるが、S(n) = O(n^(k-1))にはならない
自然数k>=2を示せ。
(2) 上の問いの答えkに対して、S(n)=O(n^k)となることを証明せよ。
(3) 上の問いに対する証明論法ではS(n)=O(n)の証明はできない。
どこで議論が破たんするかを示せ。
ご教授お願いします。
0262デフォルトの名無しさん
2011/06/08(水) 03:38:33.77T() ?
kwsk
0263デフォルトの名無しさん
2011/06/08(水) 09:50:24.950264デフォルトの名無しさん
2011/06/08(水) 10:43:05.590265デフォルトの名無しさん
2011/06/08(水) 11:31:33.33何の役に立つのですか?
0266デフォルトの名無しさん
2011/06/08(水) 11:37:51.57例えばprintf()のことを聞いている?
それならそれがそのまま答えだ。
0268デフォルトの名無しさん
2011/06/08(水) 13:37:09.560269デフォルトの名無しさん
2011/06/08(水) 16:51:03.58(必要に応じてパースし) va_arg() で逐次取り出すようなコードは書いたことないな
0270デフォルトの名無しさん
2011/06/08(水) 21:32:29.980271デフォルトの名無しさん
2011/06/08(水) 22:52:12.83今スレを見ていてふと気になったんですが
>>259 に書いてあるコードの
for (i=1;i<5;i++) {
a[i]=t/b[i];
t%=b[i];
の部分、forの中身の意味が解りません。(計算的にも)
訳すとこれはどういうことなのでしょうか?
また、int a[5],b[5]={365*24*60*60,24*60*60,60*60,60,1};の部分も
なぜ「b」が必要なのでしょうか、aだけではダメなのでしょうか?
0272デフォルトの名無しさん
2011/06/08(水) 23:08:20.170273デフォルトの名無しさん
2011/06/08(水) 23:12:15.51年、月、日、時、分、秒でそれぞれ掛ける数を事前に求めてテーブルを作っている。
ループと配列を使う>259の遣り方が判り難いなら、単純に計算式を6セット並べればいいよ。
0275デフォルトの名無しさん
2011/06/08(水) 23:35:24.620276デフォルトの名無しさん
2011/06/08(水) 23:37:53.080277デフォルトの名無しさん
2011/06/08(水) 23:44:24.380278デフォルトの名無しさん
2011/06/08(水) 23:57:55.77入門の範囲を超えてます。該当環境または環境依存OKのスレへどうぞ。
>>274
printf()では掛け算はできません。
0279デフォルトの名無しさん
2011/06/09(木) 00:17:46.34次のオーダー記法に関する問題が分かりません。。
自然数上の関数Sが、以下のように再帰的に定義されている。
このSについての次の問いに答えよ。
S(0)=1, S(n)=6S( [n/2] ) + 8n
( [ n/2 ] はn/2の切捨て)
(1) S(n) = O(n^k)とはなるが、S(n) = O(n^(k-1))にはならない
自然数k>=2を示せ。
(2) 上の問いの答えkに対して、S(n)=O(n^k)となることを証明せよ。
(3) 上の問いに対する証明論法ではS(n)=O(n)の証明はできない。
どこで議論が破たんするかを示せ。
ご教授お願いします。
0280デフォルトの名無しさん
2011/06/09(木) 00:20:34.050281デフォルトの名無しさん
2011/06/09(木) 01:58:29.280282デフォルトの名無しさん
2011/06/09(木) 03:32:04.62どう見ても、printf()の戻り値を掛けてますね。
まさかとは思いますが、それでprintf()で掛け算ができるといいたいわけじゃありませんよね?
0283デフォルトの名無しさん
2011/06/09(木) 03:50:53.78掛け算の式を引数にすることもできるだろ
0284デフォルトの名無しさん
2011/06/09(木) 05:04:27.76>274
0285デフォルトの名無しさん
2011/06/09(木) 11:51:29.56GCCでは使えるから気にすんな
0286デフォルトの名無しさん
2011/06/09(木) 11:53:48.11背理法
数学的帰納法
0287デフォルトの名無しさん
2011/06/09(木) 12:14:06.461234567秒=0年14日6時間56分7秒
1234567=0*(365*24*60*60)+14*(24*60*60)+6*(60*60)+56*60+7
1234567=0*(365*24*60*60)
+14*(24*60*60)
+6*(60*60)
+56*60
+7
0288デフォルトの名無しさん
2011/06/09(木) 12:17:23.660289デフォルトの名無しさん
2011/06/09(木) 12:19:08.02QZは消えたはずだが‥‥。
0290デフォルトの名無しさん
2011/06/09(木) 12:21:05.22>>289
だまれ低脳低学歴
0291デフォルトの名無しさん
2011/06/09(木) 13:21:15.370292デフォルトの名無しさん
2011/06/09(木) 13:43:01.000293デフォルトの名無しさん
2011/06/09(木) 17:41:54.98…とレスすると、
↓
成りすましということにしておけば…
↓
以下自演ループ
だもんな。本当に役に立たないだけのクズだ。
0294デフォルトの名無しさん
2011/06/09(木) 18:59:36.81成りすましということにしておきたいのですね。
ヘ _ ヘ
ミ ・ ・ ミ
( )〜
--------------------------------------
0296デフォルトの名無しさん
2011/06/09(木) 19:16:56.660297デフォルトの名無しさん
2011/06/09(木) 19:17:58.680298デフォルトの名無しさん
2011/06/09(木) 19:18:46.870299デフォルトの名無しさん
2011/06/09(木) 19:50:24.270300デフォルトの名無しさん
2011/06/09(木) 19:54:08.440301デフォルトの名無しさん
2011/06/09(木) 20:27:01.000302デフォルトの名無しさん
2011/06/09(木) 20:36:28.790303デフォルトの名無しさん
2011/06/09(木) 21:02:51.99酉割れてるけど、それでもがんばるの?
0304デフォルトの名無しさん
2011/06/09(木) 21:05:31.360305デフォルトの名無しさん
2011/06/09(木) 21:06:59.680306デフォルトの名無しさん
2011/06/09(木) 21:07:49.920308トリ
2011/06/09(木) 21:10:20.030309デフォルトの名無しさん
2011/06/09(木) 21:11:48.47面白いねー
0310デフォルトの名無しさん
2011/06/09(木) 21:15:37.14その発想はなかったわwwwwwww
神wwwwwもっと評価されるべき!!!111wwwww
0311デフォルトの名無しさん
2011/06/09(木) 21:43:17.35以下の処理を実現するための式を考えてみよう。(C言語)
(1)xの下位ビットをyへ、yはshort型とし、下位4ビット以下は1をセットする。
(2)xの下位ビットをchar型変数xの上位4ビットへ、yの下位ビットをzの下位ビットへ代入する。
0312デフォルトの名無しさん
2011/06/09(木) 21:45:01.35もQZなの?
0313デフォルトの名無しさん
2011/06/09(木) 21:53:20.90問題文省略しすぎ
(1)(2)に出てくるxの型は?下位ビットが曖昧
(2)にはxが出てくるけど、あってる?あと変数の型も明記してください。
0314デフォルトの名無しさん
2011/06/09(木) 21:55:08.41すみません・・・問題文にこれだけしか書いてないのです><
0315デフォルトの名無しさん
2011/06/09(木) 22:00:05.49お茶吹いた
0316デフォルトの名無しさん
2011/06/09(木) 22:08:13.980317デフォルトの名無しさん
2011/06/09(木) 22:09:18.51問題文って言うか、前後にどういう説明があって、この問題が出されているの?
(2)には2カ所xが出るけど、この問題文の前には、何かの説明があるんでしょ?
0318デフォルトの名無しさん
2011/06/09(木) 22:15:23.19y=x&0x0f; ←xの下位4ビットをyへ、それ以外のビットは0
●ビット操作2【特定ビットをセット】
y|=4; ←yのビット2を1にセット
●ビット操作3【特定ビットをクリア】
y&=~8; ←yのビット3を0クリア
以下の処理を実現するための式を考えてみよう。(C言語)
(1)xの下位ビットをyへ、yはshort型とし、下位4ビット以下は1をセットする。
(2)xの下位ビットをchar型変数xの上位4ビットへ、yの下位ビットをzの下位ビットへ代入する。
0319デフォルトの名無しさん
2011/06/09(木) 22:23:55.09http://hibari.2ch.net/test/read.cgi/tech/1307166756/334
0320デフォルトの名無しさん
2011/06/09(木) 22:27:08.98問題の体をなしていないって突き返すのが、正解では?
>(1)xの下位ビットをyへ、
・「下位ビット」とは何を指す?yへどうする?
>yはshort型とし、下位4ビット以下は1をセットする。
「下位4ビット以下」って何を指す?4ビットより下位は、とかならまだ分かるけど、どうしてほしいか不明。
>(2)xの下位ビットをchar型変数xの上位4ビットへ、yの下位ビットをzの下位ビットへ代入する。
これも「下位ビット」が何を指すのか不明。
0321デフォルトの名無しさん
2011/06/09(木) 22:37:49.24(1)
y=(x&0xffff)|0x0f;
(2)
x=(x&0xf)<<2;
z=y&0xff;
脳内補完して書いた。
(2)の中の、char型変数xって、もしかしてzの間違いじゃない?
0322デフォルトの名無しさん
2011/06/10(金) 01:19:19.41記述方法がわかりません。
詳しくのってるサイトなど教えてもらえませんでしょうか?
またリンクするためのメイクファイルというのは 生成された oファイル分必要なのでしょうか?
0323デフォルトの名無しさん
2011/06/10(金) 01:52:13.800324デフォルトの名無しさん
2011/06/10(金) 01:56:11.11gcc main.o lib.o -o hoge.exe
こういう話なんだろうか…?
0325デフォルトの名無しさん
2011/06/10(金) 01:57:12.05コンパイラ、リンカによってコマンドが違う
makefile 一つでターゲットの数100でも200でもいける
0326デフォルトの名無しさん
2011/06/10(金) 05:41:14.87unsigned str_length(const char str[])
{
unsigned len = 0;
while (str[len])
len++;
return (len);
}
int main (void)
{
char st[100];
printf("文字列を入力してください:");
scanf("%s",st);
printf("文字列%sの長さは%uです。\n",st,str_length(st));
return 0;
}
本に載っていたプログラムです。なぜintではなくunsignedでわざわざ書かれているのでしょうか?
0327デフォルトの名無しさん
2011/06/10(金) 06:01:31.170328デフォルトの名無しさん
2011/06/10(金) 09:39:36.53と思ったけど、コンパイルできた。いいのか?w
0329デフォルトの名無しさん
2011/06/10(金) 09:40:47.83unsigned int の省略表記
0330デフォルトの名無しさん
2011/06/10(金) 09:43:05.09unsigned は unsigned intなんだよ
0331デフォルトの名無しさん
2011/06/10(金) 09:45:17.56main(); が int なのと同様。
0332デフォルトの名無しさん
2011/06/10(金) 09:46:05.54死ね
0333デフォルトの名無しさん
2011/06/10(金) 09:49:38.63まあ好意的に解釈するなら、intでは表しきれないほど長い文字列で
オーバーフローしないようにしているとか……?
もし非負であるというlenの条件を型に組み込もうとして
unsignedにしたのであれば、それはCではやめたほうがいい発想だと思う
unsignedは暗黙の型変換絡みで直感的でない挙動を示すことがあるので、
多くの場合はintを使うのがよい
0334デフォルトの名無しさん
2011/06/10(金) 09:54:17.99せたんじゃ?
0335デフォルトの名無しさん
2011/06/10(金) 10:17:09.350336デフォルトの名無しさん
2011/06/10(金) 10:19:32.48signed == int == signed int == int signed
short == signed short == short signed == signed short int == signed int short == ...
0337デフォルトの名無しさん
2011/06/10(金) 10:22:58.840338デフォルトの名無しさん
2011/06/10(金) 10:23:44.85何で切れてんの?w
0339デフォルトの名無しさん
2011/06/10(金) 10:28:41.89>>328が馬鹿すぎて
0340デフォルトの名無しさん
2011/06/10(金) 10:40:51.790341デフォルトの名無しさん
2011/06/10(金) 10:49:01.04つまりお前は>>328と同レベルなのか
0342デフォルトの名無しさん
2011/06/10(金) 10:56:16.590343デフォルトの名無しさん
2011/06/10(金) 11:06:16.66うそつくなカス
0344デフォルトの名無しさん
2011/06/10(金) 11:20:20.71ならユーザ定義の構造体Aに対してtypedef hoge := unsigned Aとかできるのだろうか?
どういうセマンティックになるのか?あるAが体を成していると考えたときに和算に対するinvである-を除いた代数が想定されるのか
それをわざわざ言語に組み込む程、用途は多いのだろうか
疑問は尽きない
0345デフォルトの名無しさん
2011/06/10(金) 11:29:51.580347デフォルトの名無しさん
2011/06/10(金) 14:50:35.070348デフォルトの名無しさん
2011/06/10(金) 15:16:45.726 For each of the signed integer types, there is a corresponding (but different) unsigned
integer type (designated with the keyword unsigned) that uses the same amount of
storage (including sign information) and has the same alignment requirements. The type
_Bool and the unsigned integer types that correspond to the standard signed integer
types are the standard unsigned integer types. The unsigned integer types that
correspond to the extended signed integer types are the extended unsigned integer types.
The standard and extended unsigned integer types are collectively called unsigned integer
types.30)
ISO/IEC9899:1999にこう書いてあるんだからunsignedでいいだろ
何を揉めているんだ
0349デフォルトの名無しさん
2011/06/10(金) 16:21:22.82符号付き整数型には、キーワードunsignedで指定された、それぞれに対応する符号無し整数型がある・・・とあるだけだが?
0350デフォルトの名無しさん
2011/06/10(金) 16:34:02.820351デフォルトの名無しさん
2011/06/10(金) 17:06:09.76直感的でない挙動って具体的に何さ?
符号の有無は最上位ビットを「最終的にどう解釈させるか?」でしかないのであって、
四則演算やビット処理にしたって、内部の処理内容は符合に関わらず同じだろう。
0352デフォルトの名無しさん
2011/06/10(金) 17:25:21.596.7.2 Type specifiers
2 At least one type specifier shall be given in the declaration specifiers in each declaration,
and in the specifier-qualifier list in each struct declaration and type name. Each list of
type specifiers shall be one of the following sets (delimited by commas, when there is
more than one set on a line); the type specifiers may occur in any order, possibly
intermixed with the other declaration specifiers.
? void
? char
? signed char
? unsigned char
? short, signed short, short int, or signed short int
? unsigned short, or unsigned short int
? int, signed, or signed int
? unsigned, or unsigned int ←★ここ
? long, signed long, long int, or signed long int
? unsigned long, or unsigned long int
? long long, signed long long, long long int, or signed long long int
? unsigned long long, or unsigned long long int
以下省略
0353デフォルトの名無しさん
2011/06/10(金) 17:44:48.890354デフォルトの名無しさん
2011/06/10(金) 18:25:13.77それぞれの宣言の宣言指定子列の中で、又はそれぞれの構造体宣言及び型名の型指定子型修飾子並び
の中で、少なくとも一つの型指定子を指定しなければならない。型指定子の並びは、次に示すものの
いずれか一つでなければならない(1行に二つ以上の組がある場合、コンマで区切ってある。)。
型指定子は、いかなる順序で現れてもよく、更に、他の宣言指定子と混合してもよい。
- void
- char
- signed char
- unsigned signed char
- short, signed short, short int, signed short int
- unsigned short, unsigned short int
- int, signed, signed int
- unsigned, unsigned int
- long, signed long, long int, signed long int
・
・
・
混合してもいいし、順序もどーでもいいのかww
0355デフォルトの名無しさん
2011/06/10(金) 20:37:59.52わくわくする様なコードを引き出す効率ネタを振ってくれよ
0356デフォルトの名無しさん
2011/06/10(金) 22:09:25.80また大学1年ですがハッシュを知ってる僕って進度速いほうでしょうか?
皆まだ関数だの制御だの基本文法に慣れてない人が7割くらいです。
0357デフォルトの名無しさん
2011/06/10(金) 22:11:14.45中学生でマスターしている人もいるよ
0358デフォルトの名無しさん
2011/06/10(金) 22:12:36.140359デフォルトの名無しさん
2011/06/10(金) 22:21:09.890360デフォルトの名無しさん
2011/06/10(金) 22:22:47.310361デフォルトの名無しさん
2011/06/10(金) 22:36:18.83BGI
0362デフォルトの名無しさん
2011/06/10(金) 23:05:45.48qsort()してからbsearch()するとか
0363デフォルトの名無しさん
2011/06/10(金) 23:09:45.63状況にもよるかもしれんけど、一般的にはバイナリサーチよりハッシュのほうが速いと思う。
0364デフォルトの名無しさん
2011/06/10(金) 23:24:27.12探索処理をどこまで事前に済ませておけるかに成るから本質的じゃないっすよ
0365デフォルトの名無しさん
2011/06/10(金) 23:31:07.760366デフォルトの名無しさん
2011/06/10(金) 23:39:09.66作ったソース晒しなよ
0367デフォルトの名無しさん
2011/06/10(金) 23:39:47.16ふつうのハッシュだな。
0368デフォルトの名無しさん
2011/06/11(土) 00:07:50.990369デフォルトの名無しさん
2011/06/11(土) 00:09:19.71Cは標準のやつはない。C++はある。
0370デフォルトの名無しさん
2011/06/11(土) 00:10:59.840371デフォルトの名無しさん
2011/06/11(土) 00:20:52.310372デフォルトの名無しさん
2011/06/11(土) 00:29:10.181対1対応のハッシュにすればコリコリしない!
0373デフォルトの名無しさん
2011/06/11(土) 00:39:18.47ハッシュ関数どうしようとかコリったらどうしようとか再ハッシュの閾値とか
適当に線形検索とかでやっちゃってもいいと思うの
0374デフォルトの名無しさん
2011/06/11(土) 00:40:59.610375デフォルトの名無しさん
2011/06/11(土) 00:49:06.360376デフォルトの名無しさん
2011/06/11(土) 00:50:18.160377デフォルトの名無しさん
2011/06/11(土) 00:52:30.880378デフォルトの名無しさん
2011/06/11(土) 00:57:28.030379デフォルトの名無しさん
2011/06/11(土) 00:58:35.610380デフォルトの名無しさん
2011/06/11(土) 01:02:12.89まさに自足自給
0381デフォルトの名無しさん
2011/06/11(土) 01:13:25.650382デフォルトの名無しさん
2011/06/11(土) 01:36:42.730383デフォルトの名無しさん
2011/06/11(土) 01:40:17.75intと混在するケース
unsigned u = 0;
if (-1 < u) {
printf("出力されない");
}
意味的には (unsigned)-1 < 0 だと気づかないとハマる
この辺を考慮してだと思うが、C FAQでは
>オーバーフローの時の性質の明確なことが大事で負の値が不 要なら、
>対応する符号なしの整数を使え(ただし符号付と符号なしの 整数の混在には注意すること)。
としている
0384デフォルトの名無しさん
2011/06/11(土) 01:52:31.79それ挙動がおかしいんじゃなくて、使い方がおかしいだけじゃんかよ。
負数との比較が出てくるならちゃんとint使わなきゃダメに決まってる。
0385デフォルトの名無しさん
2011/06/11(土) 01:57:57.980386デフォルトの名無しさん
2011/06/11(土) 02:01:31.06挙動がおかしいかどうかを議論する気はない
しかしCリファレンスマニュアルでも触れられてるような落とし穴ポイントだから
普通は「直感的でない」と言われるような部分だと思う
0387デフォルトの名無しさん
2011/06/11(土) 02:01:35.920388デフォルトの名無しさん
2011/06/11(土) 02:04:18.19意識して使ったことないなあ
0389デフォルトの名無しさん
2011/06/11(土) 02:11:53.32const int *
const int *const
int *const
int const *
int const *const
お好きなものをどうぞ?
0390デフォルトの名無しさん
2011/06/11(土) 02:21:53.53暗黙の型変換では、式での最上位の型に自動的に拡張される。優先順位は、
long double > double > float > unsigned long int > long int > unsigned int > int
である。つまり>>383の例ならば、
int < unsigned int
なので、左項が自動的に上位のunsigned intに拡張され、
unsigned int < unsigned int
と内部的に処理される。
0391デフォルトの名無しさん
2011/06/11(土) 03:02:07.86const int * hoge;
const int * const hoge;
int * const hoge;
int const * hoge;
int const * const hoge;
とすると分かりやすいと思う
* の左側にconstがあるものは *hoge がconst
* の右側にconstがあるものは hoge がconst
0392デフォルトの名無しさん
2011/06/11(土) 03:18:35.92それ
わざと解かりにくくしてオマエが喜んでるだけだろ
0393デフォルトの名無しさん
2011/06/11(土) 12:28:04.59ハッシュだと3分くらいでできると思うんだがどうでしょう?
0394デフォルトの名無しさん
2011/06/11(土) 12:29:45.55頭大丈夫か?
0395デフォルトの名無しさん
2011/06/11(土) 12:29:45.84お願いします
0396デフォルトの名無しさん
2011/06/11(土) 12:31:02.670397デフォルトの名無しさん
2011/06/11(土) 12:38:31.560398デフォルトの名無しさん
2011/06/11(土) 12:40:37.080399デフォルトの名無しさん
2011/06/11(土) 12:40:48.550400デフォルトの名無しさん
2011/06/11(土) 12:41:16.911兆だから桁数は平均7だろ。
リストのデータに達する時間をTとしたらハッシュの場合(7/500000000000)T
500000000000/7倍ハッシュのほうが速いってことでOKですか?
0401デフォルトの名無しさん
2011/06/11(土) 12:44:12.930402デフォルトの名無しさん
2011/06/11(土) 12:45:49.33桁ごとに線形リスト作ってるから。
あれ違うっけ?
0403デフォルトの名無しさん
2011/06/11(土) 12:48:46.640404デフォルトの名無しさん
2011/06/11(土) 12:49:53.470405デフォルトの名無しさん
2011/06/11(土) 12:50:04.650406デフォルトの名無しさん
2011/06/11(土) 12:54:22.270407デフォルトの名無しさん
2011/06/11(土) 12:58:41.78実装の仕方によって性能はちがうんだと思ってたんだが
間違ってる?
0408デフォルトの名無しさん
2011/06/11(土) 13:13:52.284 000 000 000 000バイト = 3 725.2903 ギガバイト
のデータを3分でソートしちゃうの?
0409デフォルトの名無しさん
2011/06/11(土) 13:28:12.55ヘッドホンで聞ける音として出したいのですがそういう関数はございますか?
0410デフォルトの名無しさん
2011/06/11(土) 13:36:56.650411デフォルトの名無しさん
2011/06/11(土) 13:57:22.160412デフォルトの名無しさん
2011/06/11(土) 13:58:44.56スレ違いなのでこちらへどうぞ
Win32API質問箱 Build94
http://hibari.2ch.net/test/read.cgi/tech/1306687231/
0413デフォルトの名無しさん
2011/06/11(土) 14:06:42.89誘導ありがとうございます
0414デフォルトの名無しさん
2011/06/11(土) 14:11:47.36それ言い出すと、どんなアルゴリズムでもそうだからな。
大まかな話なら「ハッシュはO(1)でバイナリサーチはO(log2N)でハッシュのほうが速い」でいいよ。
0415デフォルトの名無しさん
2011/06/11(土) 15:41:25.06なんで繰り返したの?補足?
>>392
わかりにくい?逆に>>392はどう理解してるの?
0416デフォルトの名無しさん
2011/06/11(土) 20:55:10.99「直感的でない」の意味が分からん。
0417デフォルトの名無しさん
2011/06/11(土) 22:25:12.30少々理由があってプログラムの勉強(C言語)を1からやらなければならなくなりました。
そこで質問ですが、C言語を学ぶ上で数学の知識は必要でしょうか?確か高校レベルな数学知識が必要だった気がしたのですがどの辺りを学べばいいかアドバイスお願いします
0418デフォルトの名無しさん
2011/06/11(土) 22:28:14.93C言語で暗号を扱いたいなら暗号の知識がいるし
C言語で3Dを扱いたいなら3Dの知識がいるし
C言語で数学の計算をしたいなら数学の知識がいるというだけ
0419デフォルトの名無しさん
2011/06/11(土) 22:30:08.62大学からやり直せ
0420デフォルトの名無しさん
2011/06/11(土) 22:30:11.630421デフォルトの名無しさん
2011/06/11(土) 22:35:17.97C言語を学ぶのに数学の知識が要らないのは確かである
プログラミング自体が数学だということが問題なのではない
0422デフォルトの名無しさん
2011/06/11(土) 22:36:58.98こういう馬鹿にならないためにも本をいっぱい読もう
終わり
0423デフォルトの名無しさん
2011/06/11(土) 22:38:12.030424デフォルトの名無しさん
2011/06/11(土) 22:38:47.440425デフォルトの名無しさん
2011/06/11(土) 22:44:15.54むしろ日本語の読解力のほうが必要な気がする
0426デフォルトの名無しさん
2011/06/11(土) 22:47:32.25英語じゃだめなんですか?
0427デフォルトの名無しさん
2011/06/11(土) 22:49:29.92まぁ別にそれでもいいよ
0428デフォルトの名無しさん
2011/06/11(土) 22:56:02.250429デフォルトの名無しさん
2011/06/11(土) 23:01:08.48高校数学くらいさくさく理解できる程度の知能は必要
0430デフォルトの名無しさん
2011/06/11(土) 23:10:38.96躓くならそこで立ち止まって他の必要なことを勉強すればいい
0431デフォルトの名無しさん
2011/06/12(日) 10:11:55.68http://hibari.2ch.net/test/read.cgi/tech/1306687231/274
0432デフォルトの名無しさん
2011/06/12(日) 10:48:56.18下記のプログラムを実行すると
Address 1 の値とAddress 2 の値が同じになってしまいます。
脳内では、例えばAddress 1 が0x0000h だとすると、Address 2は0x0005h
と表示したいのですが、頭が悪くてできません。宜しくオナガイシマス。
#include <stdio.h>
typedef struct _IplImage
{
int nSize;
char *imageData;
}
IplImage;
int main()
{
char *p;
IplImage image = {10, "abcdefghijklnmopqrstuvwxyz"};
IplImage *pIplImage;
pIplImage = ℑ
p = &pIplImage->imageData[0];
printf("Address 1 = %x\n", &p);
printf("Value = %s\n", p);
p = &pIplImage->imageData[5];
printf("Address 2 = %x\n", &p);
printf("Value = %s\n", p);
return 0;
}
0433デフォルトの名無しさん
2011/06/12(日) 10:54:41.180434デフォルトの名無しさん
2011/06/12(日) 10:54:58.26ってなんだw
0435デフォルトの名無しさん
2011/06/12(日) 10:57:32.02欲しいのは「pが指しているアドレス」じゃないの?
だったら&pじゃなくてpだよ。
0436デフォルトの名無しさん
2011/06/12(日) 10:59:49.000437デフォルトの名無しさん
2011/06/12(日) 11:01:13.230438デフォルトの名無しさん
2011/06/12(日) 11:04:19.63どんな環境ですか?
0439デフォルトの名無しさん
2011/06/12(日) 11:08:50.19できました、皆さんありがとう
pIplImage = ℑ
ですが、偶然ですなんでだろう^^
"pIplImage = ℑ"
0440デフォルトの名無しさん
2011/06/12(日) 11:14:06.93pIplImage = ℑ
ピー アイ(大文字) ピー エル アイ(大文字) エム エー ジー イー 半角スペース イコール 半角スペース アンパサンド アイ エム エー ジー イー セミコロン
です
0441デフォルトの名無しさん
2011/06/12(日) 11:20:55.75おねがいします
0442デフォルトの名無しさん
2011/06/12(日) 11:23:43.400443デフォルトの名無しさん
2011/06/12(日) 12:08:00.19↓
…
0444デフォルトの名無しさん
2011/06/12(日) 14:44:26.720445417
2011/06/12(日) 15:40:35.120446デフォルトの名無しさん
2011/06/12(日) 18:06:36.780447デフォルトの名無しさん
2011/06/12(日) 18:17:33.19教えてやるから、金振り込んでくれよ。
0448デフォルトの名無しさん
2011/06/12(日) 18:20:54.460449デフォルトの名無しさん
2011/06/12(日) 18:37:06.770450デフォルトの名無しさん
2011/06/12(日) 22:00:33.660451デフォルトの名無しさん
2011/06/12(日) 22:08:18.710452デフォルトの名無しさん
2011/06/12(日) 22:52:33.76このとき、strftimeの%Yを書く部分をfgetsで取得したキーボードからの文字列で動作させているのですが、
VC6.0で起動させたところ、if文に入れなければ動作しますが、if文の中に入れて動かすとエラーでプログラムが強制終了されます。
何の原因が考えられるでしょうか?
0453デフォルトの名無しさん
2011/06/13(月) 00:15:36.680454デフォルトの名無しさん
2011/06/13(月) 11:41:47.650455デフォルトの名無しさん
2011/06/13(月) 12:50:29.140456デフォルトの名無しさん
2011/06/13(月) 12:59:10.210457デフォルトの名無しさん
2011/06/13(月) 13:10:57.530458デフォルトの名無しさん
2011/06/13(月) 13:45:04.290459デフォルトの名無しさん
2011/06/13(月) 13:51:33.15VC6.0は標準C++と変数のスコープが違っていただろ
その当たりのバグじゃないのか?
0460デフォルトの名無しさん
2011/06/13(月) 20:34:15.570462デフォルトの名無しさん
2011/06/13(月) 22:58:52.370463デフォルトの名無しさん
2011/06/13(月) 23:01:23.46ビットシフトはなんの役に立つのでしょうか?
0464デフォルトの名無しさん
2011/06/13(月) 23:03:14.12/2
はビットシフトで置き換えられる。
0465デフォルトの名無しさん
2011/06/13(月) 23:10:38.31フラグ操作
>>463
bmpファイルをfopenで直接読み込んで色データを取り出したいときとか
0467デフォルトの名無しさん
2011/06/13(月) 23:16:13.160468デフォルトの名無しさん
2011/06/13(月) 23:24:50.09int i=0;
L:
printf("%d\n", i++);
goto L;
}
main(){
a();
}
これを実行すると延々と数が増加していく。
これを、a()に変更を加えずに、a()の処理が100ms毎に一時停止と再開を繰り返すようにするには、どうしたらいいですか?
0469デフォルトの名無しさん
2011/06/13(月) 23:26:41.38むりだよーん
0470デフォルトの名無しさん
2011/06/13(月) 23:31:45.42printfを自分で定義して100msごとに〜って言う動作をさせる(笑)
0471デフォルトの名無しさん
2011/06/13(月) 23:44:17.950472デフォルトの名無しさん
2011/06/14(火) 00:15:56.13#include <unistd.h>
#define printf usleep(100000); printf
を追加
0473デフォルトの名無しさん
2011/06/14(火) 06:05:31.83少し調べたところ、何かをリンクできていないようです。
しかし、それが一体何なのか分かりません。
どのようにすればよいのでしょうか?
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
mcco.c:
警告 W8070 mcco.c 53: 関数は値を返すべき(関数 main )
警告 W8004 mcco.c 142: 'number' に代入した値は使われていない(関数 OMonteCarlo )
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: 外部シンボル '_sgenrand' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_sendconstantlattice' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_sendrandomlattice' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_onespeciesgathermetropolis' が未解決(C:\MYSRC\MCCO.OBJ が
参照)
Error: 外部シンボル '_getaftermoveposition' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_probofOhoppingCO' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_probofCOreaction' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_genrand' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_changespecies' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_probofCOexist' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_changetotalvalue' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_Arrhenius' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_returndeltatime' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_duplicatelattice' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_savemfile' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_randomnumber' が未解決(C:\MYSRC\MCCO.OBJ が参照)
Error: 外部シンボル '_countspecies' が未解決(C:\MYSRC\MCCO.OBJ が参照)
0474デフォルトの名無しさん
2011/06/14(火) 07:14:20.75bcc32 *.c
とかやってみたら?
0475デフォルトの名無しさん
2011/06/14(火) 09:19:17.040476デフォルトの名無しさん
2011/06/14(火) 09:35:49.70どう見ても、コンパイル完了後、リンクしようとして出たエラーですが。
0478デフォルトの名無しさん
2011/06/14(火) 10:04:21.270479デフォルトの名無しさん
2011/06/14(火) 10:08:01.19痴漢バスの千尋のほかの作品や他の女優名がわからないでしょうか?
誰か詳しい方お願いします
0480デフォルトの名無しさん
2011/06/14(火) 10:17:06.84http://studiokingyo.fc2web.com/
0481デフォルトの名無しさん
2011/06/14(火) 10:39:58.080482デフォルトの名無しさん
2011/06/14(火) 12:26:36.10apacheのモジュール開発なんだけど
0483デフォルトの名無しさん
2011/06/14(火) 12:29:49.00誰に聞けばいいんだよ
0484デフォルトの名無しさん
2011/06/14(火) 12:49:46.550485デフォルトの名無しさん
2011/06/14(火) 13:17:32.87詐欺
0486デフォルトの名無しさん
2011/06/14(火) 20:21:29.51すげえ、参考になった
0487デフォルトの名無しさん
2011/06/14(火) 21:06:17.88自作自演すんなみっともない
0488デフォルトの名無しさん
2011/06/14(火) 21:09:10.23ありがとうございます!
高度情報が豊富で助かります
0489デフォルトの名無しさん
2011/06/14(火) 21:12:08.780490デフォルトの名無しさん
2011/06/14(火) 21:15:09.220491デフォルトの名無しさん
2011/06/14(火) 21:37:07.940492デフォルトの名無しさん
2011/06/14(火) 21:43:34.35無理せず母国語でおk
0493デフォルトの名無しさん
2011/06/14(火) 21:46:28.880494デフォルトの名無しさん
2011/06/14(火) 22:04:58.98その中の最大値と最小値を出すプログラムを書きたいのですが
どうしても作れません…
elseを使わなくてはいけないのですが…どのように書いたらいいでしょうか?
0495デフォルトの名無しさん
2011/06/14(火) 22:09:59.29なくても簡単
0496デフォルトの名無しさん
2011/06/14(火) 22:13:06.82int main(void)
{
int a;
int b;
int c;
int d;
int x;
printf("1つ目の整数を入力せよ\n");
scanf("%d",&a);
printf("2つ目の整数を入力せよ\n");
scanf("%d",&b);
printf("3つ目の整数を入力せよ\n");
scanf("%d",&c);
printf("4つ目の整数を入力せよ\n");
scanf("%d",&d);
printf("【 %d , %d , %d , %d 】\n",a,b,c,d);
if(a == '>')
{
printf("最大値は、%d\n",a>b);
}
else if (a)
printf("最大値は、%d \n",a>b);
printf("何かキーを押して下さい\n");
getch();
printf("END\n");
return 0;
}
0497デフォルトの名無しさん
2011/06/14(火) 22:13:37.57#include <stdio.h>
int main()
{
printf("1+2+3+4+5\n");
return 0;
}
これだと1+2+3+4+5と表示されるのですが
計算させるにはどうしたらいいんでしょうか?
0498デフォルトの名無しさん
2011/06/14(火) 22:14:09.37ソート?というのはまだ習っていないので恐らく使わないと思います…
0499デフォルトの名無しさん
2011/06/14(火) 22:15:38.84printf("%d",1+2+3+4+5);
0500デフォルトの名無しさん
2011/06/14(火) 22:15:39.65printf("1+2+3+4+5\n");
printf("%d\n", 1+2+3+4+5);
0502デフォルトの名無しさん
2011/06/14(火) 22:19:57.72>>500
できました!ありがとうございます。
0503デフォルトの名無しさん
2011/06/14(火) 22:48:33.61#include <stdio.h>
int main(void)
{
int a[4];
int i;
int max;
int min;
for(i=0;i<4;i++) {
printf("%dつ目の整数を入力せよ\n", i+1);
scanf("%d",&a[i]);
}
printf("【 %d , %d , %d , %d 】\n",a[0],a[1],a[2],a[3]);
for (i=1,max=a[0],min=a[0];i<4;i++) {
if(max<a[i])
max=a[i];
if(min>a[i])
min=a[i];
}
printf("最大値は、%d \n",max);
printf("最小値は、%d \n",min);
printf("何かキーを押して下さい\n");
getch();
printf("END\n");
return 0;
}
0504デフォルトの名無しさん
2011/06/14(火) 23:05:28.35回答ありがとうございます。
ちょっと色々自分で調べてたのですが、
ソート?の解釈は繰り返し文ということでよいでしょうか?
また、>>503様が書いてくださった「max」等の関数を
まだ習っていない状態なのですが、
(現在printf scanf if for程度までは習ってます)
何か別のものに置き換えることは可能なのでしょうか…。
0505デフォルトの名無しさん
2011/06/14(火) 23:35:40.21変数tempなりをつくって入れ替え処理でしょうか?
お願いします。
0506デフォルトの名無しさん
2011/06/14(火) 23:42:33.67for (i=0;i<5;i++)
b[4-i]=a[i];
0507デフォルトの名無しさん
2011/06/14(火) 23:43:23.77もう一度よく復習をしよう
変数の宣言と四則演算あたりから
0508デフォルトの名無しさん
2011/06/14(火) 23:45:47.02すごい!
0509デフォルトの名無しさん
2011/06/14(火) 23:51:41.89出来ました。
考え方を教えてください
0510デフォルトの名無しさん
2011/06/14(火) 23:53:32.69数オリの問題で頭を鍛えるのだ
0511デフォルトの名無しさん
2011/06/14(火) 23:56:18.60よく考えると理解できました。
ありがとうございます
0512デフォルトの名無しさん
2011/06/15(水) 00:28:59.15神
これはもっと評価されるべき
0513デフォルトの名無しさん
2011/06/15(水) 00:56:08.330514デフォルトの名無しさん
2011/06/15(水) 01:46:56.67クイックソートで移動した回数を記録するプログラムを作っているのですが
再帰呼び出しのたびに回数をゼロで初期化してしまっているみたいです。
どのように直せばいいですか。
http://codepad.org/JUNth3NB
static int count = 0;
0516デフォルトの名無しさん
2011/06/15(水) 01:54:29.630517デフォルトの名無しさん
2011/06/15(水) 09:30:06.73count += sort_quick(low, j, array); // 前半部についてソート
if (i < high)
count += sort_quick(i, high, array); // 後半部についてソート
0518デフォルトの名無しさん
2011/06/15(水) 19:56:33.35昨夜の>>504です
関数も習っていませんし、elseも使っていない状態なので
とても申し上げにくいのですがOKじゃないですね…
一晩考えましたがやっぱりよくわかりませんでした。
どのように書くべきでしょうか…
0519デフォルトの名無しさん
2011/06/15(水) 20:12:51.13最大数の場合、4つの数を比較して、一番大きいのを選び出さないといけないよね?
最低限、比較して、判定する if は使わないといけない。 これを使ってよければ、
1.最初に4つの数を、それぞれを変数a、b、c、dに格納する。
2.maxとminの変数を用意する。
3.maxとminにaを代入する。
4.maxとminをそれぞれ、bと比較する。
5.maxよりbが大きければ、maxにbの値を代入する。
6.minよりbが小さければ、minにbの値を代入する。
以下、4.〜6.と同様の処理を、cとdで行う。
最後まで行うと、maxとminには4つの数の最大数、最少数が入っているので、それを表示する。
文章で書くとこんな感じかな。
0520デフォルトの名無しさん
2011/06/15(水) 20:33:39.27いままでやったこと復習しろよ
0521デフォルトの名無しさん
2011/06/15(水) 20:35:55.34#include <stdio.h>
int main(void)
{
int a,b,c,d;
int max,min;
printf("1つ目の整数を入力せよ\n"); scanf("%d",&a);
printf("2つ目の整数を入力せよ\n"); scanf("%d",&b);
printf("3つ目の整数を入力せよ\n"); scanf("%d",&c);
printf("4つ目の整数を入力せよ\n"); scanf("%d",&d);
printf("【 %d , %d , %d , %d 】\n",a,b,c,d);
max = a; min = a;
if (b > max) max = b; if (b < min) min = b;
if (c > max) max = c; if (c < min) min = c;
if (d > max) max = d; if (d < min) min = d;
printf("最大値は、%d \n",max);
printf("最小値は、%d \n",min);
return 0;
}
0522デフォルトの名無しさん
2011/06/15(水) 20:48:11.540523デフォルトの名無しさん
2011/06/15(水) 20:50:13.040524デフォルトの名無しさん
2011/06/15(水) 20:54:14.58>>474さん
ご指摘ありがとうございます。返事が遅くなってごめんなさい。
言われたように「*.c」で実行したところ、エラーが消えて次のような警告だけになりました。
c:\mysrc>bcc32 *.c
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
data.c:
mcco.c:
警告 W8070 mcco.c 53: 関数は値を返すべき(関数 main )
警告 W8004 mcco.c 142: 'number' に代入した値は使われていない(関数 OMonteCarlo )
mechanism.c:
警告 W8057 mechanism.c 293: パラメータ 'lattice' は一度も使用されない(関数 getaf
termoveposition )
potential.c:
警告 W8004 potential.c 36: 'Onumber' に代入した値は使われていない(関数 probofCOr
eaction )
警告 W8004 potential.c 58: 'Onumber' に代入した値は使われていない(関数 probofOho
ppingCO )
random.c:
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
0525デフォルトの名無しさん
2011/06/15(水) 20:55:48.22そのアウトプットはdata.exeとdata.tdsでしたが、一応実行したところ次のように表示されました。
「please check the command line!!」
しかし、「please check the command line!!」という表現はMCCO.cファイルのprintfにしか含んでいないので、
なぜこれがdata.exeを動かしてでてくるのかわかりません。
私自身C的外れなことをやっているのかもしれませんが、
もしこの僅かな情報から何か示唆して頂ける方がいましたら教えて頂きたいです。
よろしくお願いします。
0526デフォルトの名無しさん
2011/06/15(水) 21:02:21.77その調子で続けるならエスパースレ推奨
0527デフォルトの名無しさん
2011/06/15(水) 21:16:17.36セグメンテーション違反が出力されてしまいます。
配列自体は要素が少なく、線形探索で実現するためにlfindを使用したいのですが、
セグメンテーションが出力される要因がありましたら教えていただきたいと思います。
0528デフォルトの名無しさん
2011/06/15(水) 21:21:17.59else使うように直したよ
#include <stdio.h>
int main(void)
{
int a,b,c,d;
int max,min;
printf("1つ目の整数を入力せよ\n"); scanf("%d",&a);
printf("2つ目の整数を入力せよ\n"); scanf("%d",&b);
printf("3つ目の整数を入力せよ\n"); scanf("%d",&c);
printf("4つ目の整数を入力せよ\n"); scanf("%d",&d);
printf("【 %d , %d , %d , %d 】\n",a,b,c,d);
max = a; min = a;
if (b > a) {
if (c > b) if (d > c) max = d; else max = c; else if (d > b) max = d; else max = b;
} else {
if (c > a) if (d > c) max = d; else max = c; else if (d > a) max = d; else max = a;
}
if (b < a) {
if (c < b) if (d < c) min = d; else min = c; else if (d < b) min = d; else min = b;
} else {
if (c < a) if (d < c) min = d; else min = c; else if (d < a) min = d; else min = a;
}
printf("最大値は、%d \n",max);
printf("最小値は、%d \n",min);
return 0;
}
0529528
2011/06/15(水) 21:24:33.47これいらない。消しておいてください。
0530デフォルトの名無しさん
2011/06/15(水) 21:25:06.930531デフォルトの名無しさん
2011/06/15(水) 22:51:10.87lsearch() は、マッチする要素を見つけられなかったとき、配列の最後に key をつけ加える。そして *nmemb を 1 ふやす。したがって、この関数を使用
する際には、マッチする要素が存在するか、もしくは配列に要素を追加するための領域があるか、を把握しておく必要がある。
これは?
0532デフォルトの名無しさん
2011/06/16(木) 02:25:11.60sizeof (char)が必ず1になるから、
malloc等の引数でイチイチ n * sizeof (char)とか書かなくていい、
いや、書いたほうがいいとかのクソ議論が起こらないはず。byteなら。
さらにchar四文字、byte四文字でタイプ数は増えたりもしないし。
想像するに、
・そんなに欲しけりゃtypedefしれ
・1byteが8bitというのも当時は定番じゃなかった?から、抽象的にcharとゆっといた。
とか?
0533デフォルトの名無しさん
2011/06/16(木) 04:02:53.15integer → int
character → char
0534デフォルトの名無しさん
2011/06/16(木) 04:06:09.270535デフォルトの名無しさん
2011/06/16(木) 04:16:02.210536デフォルトの名無しさん
2011/06/16(木) 05:00:31.98あるよ
0537デフォルトの名無しさん
2011/06/16(木) 05:03:23.860538デフォルトの名無しさん
2011/06/16(木) 05:06:45.410539デフォルトの名無しさん
2011/06/16(木) 12:08:22.740540デフォルトの名無しさん
2011/06/16(木) 13:18:29.39ボーランド系なら clrscr() 使え。
Win98 までなら "\x1b[2J" を出力しても良い。
system("cls"); でも良いな。
*BSD or 犬糞なら system("clear");
0541539
2011/06/16(木) 13:18:54.570542539
2011/06/16(木) 13:20:19.97被りました、どうも
回答ありがとうございました
0543デフォルトの名無しさん
2011/06/16(木) 13:31:36.60カーソル移動や画面制御等いろいろ用意されてる。
conio.h 見るだけで使い方も大体解るからすぐ使えるし。
Turbo-C 2.0 でも BCC 5.5 でも共通だから移植も一発だし。
0544デフォルトの名無しさん
2011/06/16(木) 18:51:44.24どういうことでしょう?
0545デフォルトの名無しさん
2011/06/16(木) 18:53:47.480546デフォルトの名無しさん
2011/06/16(木) 18:59:44.68デコメみたいに絵文字はどうなんですか?
0547デフォルトの名無しさん
2011/06/16(木) 19:20:19.19aciiはアメリカの文字コード
jisはaciiを拡張して、カタカナも表示出来るようにしたもの
shift_jisは(ry
0548デフォルトの名無しさん
2011/06/16(木) 19:23:26.58絵文字であっても例外は在りません
と言うか、普通の文字のフォントもビットマップです
要するに、この番号はこの絵(見た目は文字)を表示しろ。と命令してる訳ですね
0549デフォルトの名無しさん
2011/06/16(木) 19:23:57.43プログラミングではjisって何バイトですか?
charが1byteだから1byte?
後プログラミング環境で一番簡単なのはどれですか?
visual studioはオプションが多すぎて全く理解ができないので
初心者にも分かりやすい奴お願いします。
0550デフォルトの名無しさん
2011/06/16(木) 19:30:57.04http://euc.jp/i18n/charcode.ja.html
0551デフォルトの名無しさん
2011/06/16(木) 19:35:53.71まず、shift_jisとjisは違うという事から、覚えて置いてください
jisはaciiが7bitしか使わないので、余った部分にカタカナを詰め込んだ文字コードで、8bit(1byte)です
shift_jisは漢字も使えるように拡張したもので、2byteです
プログラミング環境で一番簡単なものと言うのは分かりません
英語しか表示出来ないaciiでしょうか。。。
日本語は表示するだけなら、特に難しい事は無いですが、文字列処理の時は、どの文字コードでも鬼門です
0552デフォルトの名無しさん
2011/06/16(木) 19:35:55.64byteでロジック考えるようなところにはマシン語使ってたから
0553デフォルトの名無しさん
2011/06/16(木) 19:42:31.67ありがとう、jisとaciiってそもそも何なんですか?Osに組み込まれた規格なのでしょうか?
例えばwindows95だと何規格なんでしょうか?
0554デフォルトの名無しさん
2011/06/16(木) 19:43:26.21被る機能は作らないとか言う精神が有ったらしい
この場合、char = byteだからな
気に食わないなら、#defineで別名作ればおkって文化だった
0555デフォルトの名無しさん
2011/06/16(木) 19:48:10.670556デフォルトの名無しさん
2011/06/16(木) 19:48:33.41え。。。
文字の規格ですが。。。
この番号はこの文字っていうルールが企画ごとに違うのです
OSとかは規格とは関係なくて、私たちが気にするのは、どのOSやどのアプリがどの文字コードをサポートしてるか?です
それに合わせて作るだけです
期待のunicodeもmsだけ独自になってて、元の木阿弥です
0557デフォルトの名無しさん
2011/06/16(木) 19:53:52.23ありがとうございます、よくわかりました。
C言語の場合アスキーコードに対応していますか?
0558デフォルトの名無しさん
2011/06/16(木) 19:57:33.44C言語にはそもそも文字コードの概念が無い、だから対応も糞もない
現実的な話だと大抵の環境でアスキーコードだと決め打ちでいける
0559デフォルトの名無しさん
2011/06/16(木) 20:01:11.04文字ライブラリからC言語によって文字を呼び出すわけでしょ?
0560デフォルトの名無しさん
2011/06/16(木) 20:04:18.68ええっと。。。
コンパイラに依存するとしか。。。
まあ、aciiはjis,shift_jis,ecu,unicodeなど、あらゆる文字コードの元になってるので、まずaciiコードを表示出来ない環境は在りませんが。。。。
今時、aciiで不便に感じない環境はクレジット端末の通信データとか、ATMに通信データとか、そんなのぐらいですよ?
0561デフォルトの名無しさん
2011/06/16(木) 20:07:23.91cだけでなく、あらゆる言語は、文字列として扱われる数字の列を流してるだけです
流れてきた数字の列をどう表示するかは、OSやアプリに依存します
0562デフォルトの名無しさん
2011/06/16(木) 20:09:55.840563デフォルトの名無しさん
2011/06/16(木) 20:13:39.990564デフォルトの名無しさん
2011/06/16(木) 20:16:14.15お、あんがと
何か綴り違ったよな〜とは思ってたんだ(けど、分れば良いやというノリだった)
0565デフォルトの名無しさん
2011/06/16(木) 20:18:00.822chらしいっちゃらしいがw
0566デフォルトの名無しさん
2011/06/16(木) 21:17:27.92[2]本文
以下のLED 7セグメント(4桁)を制御するプログラムを作成してください
(1) 入力に+ キー1つをもち、1桁だけのカウンタを作成する。
(2) スイッチのチャタリング防止のために、20msec程度の間に1msec
間隔で連続5回程度ON状態を検出したらONにする関数を追加する。
(3) スイッチのチャタリング防止の機能を拡張すると、長押しの動作の
判定が可能になる。長押し(1秒以上)でカウンタが「ゼロ」になるように拡張する。
(4) 500msecの間に2回ONを検知したらダブルクリックである機能を追加
する。ダブルクリックでは、自動的にカウントアップする動作を行うこと。
もう一度ダブルクリックで停止、ダブルクリックで再開、長押しでリセットする。
(5) 実験1〜4で実現した機能をさらに活用して、4桁のカウンタを作る。
このとき長押し、ダブルクリックの機能も残す。
4桁の7セグを直接制御するため、 ダイナミック点灯の考え方を使って4桁表示を行う。
7セグを制御する7ポート(例:RBO〜6)と表示する桁を制御する4ポート
(例:RAO〜3)を利用する。
表示桁の切り替えを5msecで行い、そのタイミングでその桁に表示する数値を切り
替える。
[3] 環境
[3.1]Windows Vista
[3.2]Visual Studio 2008
[3.3]C言語
[4]6月21日
[5]使用したPICは、16F84です
ヒントだけでも、よろしくおねがします
0567デフォルトの名無しさん
2011/06/16(木) 21:20:35.81そうだね。
byteとかwordとか各企業で適当に決める単位だから。
0568デフォルトの名無しさん
2011/06/16(木) 21:24:29.34宿題とか課題とかは自分でやりなさい
0569デフォルトの名無しさん
2011/06/16(木) 21:37:51.82めちゃくちゃいってやがる……
なるべく自分で調べる癖つけといたほうがいいぞ……
0570デフォルトの名無しさん
2011/06/16(木) 21:57:26.66ヒントだけでもいいので、お願いします。
本当に、困っています。助けて下さい。
0572デフォルトの名無しさん
2011/06/16(木) 22:13:21.62C/C++の宿題片付けます 149代目
http://hibari.2ch.net/test/read.cgi/tech/1307166756/l50
0573デフォルトの名無しさん
2011/06/16(木) 23:02:54.95仕様もなにも分からないのに・・・こんな場違いな質問してる人って・・
0574デフォルトの名無しさん
2011/06/16(木) 23:14:14.580575デフォルトの名無しさん
2011/06/16(木) 23:41:27.58メンテ・拡張しやすくする為に悩んでいます。
イメージは以下で、AとかBとか区別しています。
皆さんならどう判り易く宣言しますか?
cmd optA ← サブオプションは受け付けない
cmd optB ← サブがなくとも実行可能
cmd optB suboptα ← サブがありでも実行可能
cmd optC ← サブがなくとも実行可能
cmd optC suboptβ ← サブがありでも実行可能
cmd optC suboptγ ← 複数のサブがありでも実行可能
・enumでopt, suboptを個別に羅列宣言をする。
・構造体配列にガシガシ書き込む。
0576デフォルトの名無しさん
2011/06/17(金) 01:42:19.190577デフォルトの名無しさん
2011/06/17(金) 01:44:53.98getopt() は使わないの?
0578デフォルトの名無しさん
2011/06/17(金) 04:49:55.040579デフォルトの名無しさん
2011/06/17(金) 05:26:17.93名詞として使うなら「アヌス」と言え。
0580デフォルトの名無しさん
2011/06/17(金) 05:28:05.250581デフォルトの名無しさん
2011/06/17(金) 06:21:41.85アヌス崩壊、アヌス舐め、が正解なんだな!! 勉強になるスレだなぁ・・・
0582デフォルトの名無しさん
2011/06/17(金) 06:23:29.15http://ja.forvo.com/word/anal/
0583デフォルトの名無しさん
2011/06/17(金) 06:27:44.60これまでヘッダーの中身に関数の定義を書いてたのですが、
ヘッダーの中身をプロトタイプだけにする事はできるのでしょうか?
main関数が書いてあるファイルには、main関数以外書きたくないので、
プロトタイプ、関数定義、main関数、で三つのファイルに分けたいのですが、この場合どのようにコンパイルしたら良いのでしょうか?
0584デフォルトの名無しさん
2011/06/17(金) 06:44:55.28プロトタイプの .h ファイルを作成して、.c をコンパイル&リンクすれば・・・
分割コンパイルって知ってます?
0585デフォルトの名無しさん
2011/06/17(金) 08:11:21.68http://codepad.org/BTSjtGoJ
Makefile
http://codepad.org/M5uycMeC
0.33秒毎に数を増やしながら表示してきます。
これのspinlock()は、単純にwhileの空ループですが、
この空ループが、コンパイルオプションの最適化によって無効にされてしまうことがあるようです。
試しに make OPT=-O2 でコンパイルしてみると、動かなくなります。(make だけなら動く)
0586585
2011/06/17(金) 08:16:00.07static
void spinlock(gboolean* lock_flag)
{
while(*lock_flag == TRUE) {
g_usleep(0);
}
}
とすれば、今度は make OPT=-O2でも whileが変な最適化されずに動くようです。
シングルスレッドの時には無害だった最適化が、マルチスレッドだと有害になることがあるので、厄介だと思いました。
while(flag){} が最適化で無効にされるのは厄介だと感じます
0587585
2011/06/17(金) 08:19:18.36コンパイルオプションに特別なフラグを指定する作法とかがあるのでしょうか?
(whileの例以外にも、まだまだ知らない副作用が潜んでそうで不安です…)
もしあるのなら、教えてくれるとありがたいです。(使用コンパイラー gcc4.5)
0588デフォルトの名無しさん
2011/06/17(金) 09:06:05.33つ void spinlock(volatile gboolean* lock_flag)
つ[volatile]
最適化を抑制するだけならこれで充分。
問題は、本当にそれだけでいいか、だ。
0590デフォルトの名無しさん
2011/06/17(金) 09:26:40.72adelasa (スペイン の 女性)
官能的すぎるやろw
0591デフォルトの名無しさん
2011/06/17(金) 09:34:27.450593デフォルトの名無しさん
2011/06/17(金) 09:48:24.67この指摘は重い
0594585
2011/06/17(金) 09:58:48.55当方5+-2の3なので、なるべく細かく分割して作ってくタイプです。
半年後に混乱しないように、局所的な関数はなるべくstaticにして隠したり。コメント無くても読めるくらい単純にしたり。
main.c http://codepad.org/be9KI52Q
print_number.c http://codepad.org/LPoCWeLD
print_number.h http://codepad.org/L6gxiwfE
timer.c http://codepad.org/peDAoKYO
timer.h http://codepad.org/gkQDzl5P
Makefile http://codepad.org/6HGifLbg
0596デフォルトの名無しさん
2011/06/17(金) 11:33:57.310597585
2011/06/17(金) 11:37:37.78並列処理は、バグの結果が怪奇現象だし、バグの再現も10回に1回しか成功しなかったり
自分にとっては未知すぎます
しかしながら、シングルスレッド性能は現状で頭打ちですし、今後はコアばかり増える方向だとCNETで読みました
セレロン級ですら12コアな時代が来たら、さすがに性能を活かせなくて焦りそうなので、今のうちに無理やり使って徐々に慣れておこうかと
並列でまた何か分からないことがあったら、再び質問させて頂こうかと思ってます
その際にはまた知識を分けて下さると助かります。volatileありがとうございました
0598デフォルトの名無しさん
2011/06/17(金) 11:43:48.010599デフォルトの名無しさん
2011/06/17(金) 15:00:58.31ソース bbb.c に記述されてる関数から呼び出す場合、
宣言にextern付けときゃ何とかなるって考えは間違ってる?
---aaa.h---
extern void aa(void);
---aaa.c---
#include"aaa.h"
void aa(void) {
...
}
---bbb.c---
#include"aaa.h"
void bb(void) {
...
aa();
...
}
0600デフォルトの名無しさん
2011/06/17(金) 15:09:19.49ただしい。
おれは面倒くさいからexternつけないけど。
0601デフォルトの名無しさん
2011/06/17(金) 15:13:37.72やりたいことはわかるけど
変数参照だとハマるよ
mutexとか使うんだとお思うけど
0602デフォルトの名無しさん
2011/06/17(金) 19:14:14.73while(*(++s+1));
このwhile文がどういう働きをしてるのか分からないんだけどなにこれ?
0603デフォルトの名無しさん
2011/06/17(金) 19:15:03.130604デフォルトの名無しさん
2011/06/17(金) 19:15:59.560605デフォルトの名無しさん
2011/06/17(金) 19:19:33.650606デフォルトの名無しさん
2011/06/17(金) 20:59:25.070607デフォルトの名無しさん
2011/06/17(金) 21:01:47.420608デフォルトの名無しさん
2011/06/17(金) 21:46:03.220609デフォルトの名無しさん
2011/06/17(金) 23:28:49.74勉強になったよ。
って本当か?
0610デフォルトの名無しさん
2011/06/17(金) 23:32:47.310611デフォルトの名無しさん
2011/06/17(金) 23:33:40.41そうそう。
変数はかならずexternが必要なんだよね。
関数はどちらでもいい。
そこらへん
俺はこれでスッキリしたよ。
c言語 入門書の次に読む本
0612デフォルトの名無しさん
2011/06/17(金) 23:50:13.86こんなの動かしてみれば見えてくるかもね
int main(){
int i;
char a[] = "12345";
char *s = a;
i=atoi(s+1);
while(*(++s+1)){printf("%c %p %s\n",*(s+1),s,s);};
printf("%c %p %s\n",*(s+1),s,s);
return 0;
}
>なんとか国産の良質の専門書を出すことで,日本のコンピュータ技術の発展に(及ばずながら)力になれればなあ.そんな思いでぼくは本を書いている.
>(ここで「お前ひとりがそんなことしても何も変わらないよ」なんてくだらないことを言うやつはパンチだ!)
>専門書を書くことは,その労力から考えると,ぜんぜん割に合わない作業だ.お金がほしいならば,
>本なんぞ書いていないでその時間で残業でもバイトでもしたほうが,よっぽど確実に儲かります
>(これは本当です.一度試しに時給を計算してみましたが,計算したことを後悔するぐらいトホホな金額になりました).
>本を書くというのは,天塩にかければかけるほど,時給は安くなるんです.
>だってどんなに手をかけて品質を上げても,1冊書いての収入はあまり変わんないからね.
>そしてその収入は,印税として支払われるので基本的に後払いだ.たとえば書くのに4年かかったら,最初の頃の労働の対価が得られるのは4年後ということだ.
>時給がトホホで,支払いは4年後なんていうバイトがあったところで,やる気になるだろうか?
>それでもなんで天塩にかけて採算度外視で書くかというと,上に書いたようないろんな思いがあるからだ.
0614デフォルトの名無しさん
2011/06/18(土) 00:29:31.75#define DEBUG_PRINT printf
#else
#define DEBUG_PRINT (void)
#endif
{
DEBUG_PRINT("var is %d", var):
}
手元の環境だと、DEBUG を無効にしてビルドした場合に何も出力されなくなったのですが、
このようなマクロの使い方は環境依存でしょうか?あるいは言語仕様でサポートされていますか?
かならずしもそうではない。
初期化しなければ変数でもいらないし、ヘッダにかいてもいい。
つ http://pc12.2ch.net/test/read.cgi/tech/1201153965/139
つ tentative definition
0616デフォルトの名無しさん
2011/06/18(土) 01:30:37.86kwsk
あと、啓蒙書を書いてもらえるのもうれしい。
0617デフォルトの名無しさん
2011/06/18(土) 02:10:52.09>>594
ありがとうございます!
できるようになりました
0618デフォルトの名無しさん
2011/06/18(土) 02:26:47.26問題ない。
無効な式になるってだけ。
適当に
100;
とか書いてるのと同じになる。
0619デフォルトの名無しさん
2011/06/18(土) 04:19:03.08◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ◆QZaw55cn4cって糞だよなぁ
0620デフォルトの名無しさん
2011/06/18(土) 06:49:14.88頓珍漢な質問してすいません・・C言語でエスケープシーケンスという言葉が出てきた
のでつい。
0621デフォルトの名無しさん
2011/06/18(土) 07:54:17.71姿勢はすばらしいかもしれないが、「天塩」なんて書いてる奴は
書籍書くべきじゃないと思う。
激しく同意
0623デフォルトの名無しさん
2011/06/18(土) 09:46:19.93改行されてるエディタと、改行されないエディタがあるのですが
どういうことでしょうか?同じプログラムです。
\n
0624デフォルトの名無しさん
2011/06/18(土) 09:54:39.04文字コードをうまく判別できない欠陥エディタ
単に改行が文字として表示されていないだけでエディタの設定の問題
どちらか好きな方を選びたまえ
0625デフォルトの名無しさん
2011/06/18(土) 09:58:00.420626デフォルトの名無しさん
2011/06/18(土) 10:18:22.09メモ帳、ワードパッドに出力されてますが?
0627デフォルトの名無しさん
2011/06/18(土) 10:23:33.280628デフォルトの名無しさん
2011/06/18(土) 10:54:15.83×エディタに出力
○ファイルに出力し、そのファイルをエディタで開く
だろ。
もし仮に、直接エディタに出力していると言うならそれは環境依存の技術だから最早スレ違いだろ。
0629デフォルトの名無しさん
2011/06/18(土) 11:01:11.48すいません
ファイル=記号列の集まりってことでOKですか?
0630デフォルトの名無しさん
2011/06/18(土) 11:19:49.330631デフォルトの名無しさん
2011/06/18(土) 11:26:10.69おまいはエディタで何を開いてるの?
ファイル以外のものを開いているとでもいうの?
0632デフォルトの名無しさん
2011/06/18(土) 11:31:41.86全てのものファイルですよね・・・
アプリケーションにしろ文書にしろ・・
出力はプログラムによる結果であって・・
間違ってますか?
0633デフォルトの名無しさん
2011/06/18(土) 11:35:36.68じゃあそのファイルを管理するファイルシステムは?
鳥か卵か
0634デフォルトの名無しさん
2011/06/18(土) 11:41:02.11C言語コンパイラってC言語(とか他の言語)で書かれてるんだよね?
0635デフォルトの名無しさん
2011/06/18(土) 12:00:01.620636デフォルトの名無しさん
2011/06/18(土) 12:01:11.080637デフォルトの名無しさん
2011/06/18(土) 12:05:44.27コンピュータってコンピュータ使って作られてるんだよね?
0638デフォルトの名無しさん
2011/06/18(土) 12:13:55.220639デフォルトの名無しさん
2011/06/18(土) 12:27:37.40\n=改行
\t=タブ
みたいに、画面制御用の文字コードをC言語(系列)ではエスケープシーケンスで提供してる
エスケープシーケンスってのは\で始まる記号の事
0640デフォルトの名無しさん
2011/06/18(土) 12:28:48.500641デフォルトの名無しさん
2011/06/18(土) 12:32:08.16行末に\を使った場合ってエスケープシーケンスとは呼ばないよね?
それとも呼ぶの?
0642デフォルトの名無しさん
2011/06/18(土) 12:34:09.56逆じゃないんですか?
エスケープシーケンスを\nや\tで提供してるんじゃないんですか?
0643デフォルトの名無しさん
2011/06/18(土) 12:38:35.37?
全てのものがファイルかどうかは分からないが、
エディタで開けるものはファイルなんじゃないの?
[ファイル]→[開く]みたいな手順で開いてるだろ?
それで開けるものは「=ファイル」だろ?
0644デフォルトの名無しさん
2011/06/18(土) 13:02:08.57vbとかではそう言うの有ったけど、cにも有ったっけ。。。?
有ったとしたら、多分言わないんだろうけど
0645デフォルトの名無しさん
2011/06/18(土) 13:02:18.340646デフォルトの名無しさん
2011/06/18(土) 13:08:04.810647デフォルトの名無しさん
2011/06/18(土) 13:10:55.42改行とか、タブは特殊文字って習ったんだが。。。
もう本が無いから正確には書けないが、\[の後に英数字4文字くらい入れて表示する文字の色とかも変えられたし
エスケープシーケンスは特殊文字を表す文字の総称だと思うんだけど
0648デフォルトの名無しさん
2011/06/18(土) 13:27:55.15あぁhtml思い出しました。
例えば認識できない文字が文字化けしたら
文字化けの部分はエスケープシーケンスといいますか?
0649デフォルトの名無しさん
2011/06/18(土) 13:32:54.86それは文字コードのエンコードが違ってるだけですよね
エスケープシーケンスと何の関係が?
0650デフォルトの名無しさん
2011/06/18(土) 13:34:52.60表示できない部分はエスケープシーケンスだとは限らないだろうけど。
0651デフォルトの名無しさん
2011/06/18(土) 13:41:53.17\x31 = '1'
\x32 = '2'
エスケープシーケンスで普通の文字も表示出来るし、特殊文字そのものの事をエスケープシーケンスとは言わないよ
0652デフォルトの名無しさん
2011/06/18(土) 13:51:34.30それはC言語の場合じゃね?
\x30=\x30でしょ?
0653デフォルトの名無しさん
2011/06/18(土) 14:03:23.840654デフォルトの名無しさん
2011/06/18(土) 14:42:58.89例えば再帰の時なんてそうですが、関数の中で関数を呼び出すとき、
戻るべき位置というのは多分メモリのどこかに記憶されていますよね?
だとしたら、あまりその量を増やすのは好ましくない気がするのですが、
どの程度なら許容範囲なのでしょうか?
0655デフォルトの名無しさん
2011/06/18(土) 14:50:11.860656デフォルトの名無しさん
2011/06/18(土) 14:51:00.62スタックオーバーフローでプログラムが落ちる
個人的にはそうならなければ許容範囲としていいと思ってるがどうなんだろう
0657デフォルトの名無しさん
2011/06/18(土) 14:51:39.56パズルとかを再帰で解こうとすると、
あっというまにスタックを使い果たして落ちる。
チョコチョコっとした遊びのフィボナッチ数列出して喜ぶのが再帰の本当の用途。
0659デフォルトの名無しさん
2011/06/18(土) 15:30:35.210660デフォルトの名無しさん
2011/06/18(土) 15:33:19.170661デフォルトの名無しさん
2011/06/18(土) 15:43:43.78へーそうなのかー
0662デフォルトの名無しさん
2011/06/18(土) 15:45:01.87戻るべき位置に加えてローカル変数+αがスタックに記憶される。
だから一万や二万とか言ってる奴は単なるアホ。
0663デフォルトの名無しさん
2011/06/18(土) 15:45:36.230664デフォルトの名無しさん
2011/06/18(土) 15:56:23.38?
pythonでもこうだけど。。。
%xと間違ってないかい?
0665デフォルトの名無しさん
2011/06/18(土) 15:56:31.14再帰処理のクイックソート vs 非再帰処理のクイックソート :: drk7jp
ttp://www.drk7.jp/MT/archives/000995.html
0666デフォルトの名無しさん
2011/06/18(土) 15:57:37.13そういうのならふつーのコンパイラなら最適化でcallが消える筈
そうでもないようですよ。たとえば、
(1 + 3) * (2 + 4)
等の代数式の値を評価する方法は、非再帰で記述するのは困難。というか私はしたくない。
平衡二分木(赤黒木/AVL木)を扱うとき、非再帰で書け、というのは罰ゲームの一種だと思います。
再帰の深さが想定可能でかつそれが実用的に問題ないのであれば、再帰で記述するのもあり、だと思います。
なお理論面では繰り返しよりも再帰の方が重要です。
0668デフォルトの名無しさん
2011/06/18(土) 16:51:50.901の位が小さい順に3271,8441,4352
10の位が小さい順に8441,4352,3271
100の位が小さい順に3271,4352,8441
1000の位が小さい順に8441,4352,3271
バケツ法で並び替えをするプログラミングを作る課題なんですが、
(課題は重複なしの整数20個を小さい順に並べる)
とりあえず10で割ってあまりが、1,2,1で1の位を並べ替えようと
したのですが、全然分かりません。異なる4桁の整数でも1の位が同じ
だったり10の位が同じだったりするので、バケツに入れるとかが
どうするのか分かりませ。教えてください。
0669デフォルトの名無しさん
2011/06/18(土) 17:01:41.49重複無しで、範囲が決まってる整数を扱うにはね。
char でっかいバケツ[1000] = {0}; // とりあえず小さい型としてcharつかってみる。boolがあればそれつかう。
でっかいバケツ[3271] = 1; // バケツに入れる。ゼロ以外。区別できればよい。
でっかいバケツ[4352] = 1;
でっかいバケツ[8441] = 1;
for (int i = 0; i < バケツサイズ; i++)
if (でっかいばけつ[i] != 0) print でっかいばけつ[i]
コツは掴んでいただけただろうか。
0670デフォルトの名無しさん
2011/06/18(土) 17:44:49.95それを含めて一万や二万は問題ないと言ってるんだが。
おまえ実際に使ったことないだろ?w
0671デフォルトの名無しさん
2011/06/18(土) 17:53:51.87役に立たないから困るよね
0672デフォルトの名無しさん
2011/06/18(土) 18:01:12.77VCで1Mらしいから、2万で超えるには50byte必要
微妙だね
0673デフォルトの名無しさん
2011/06/18(土) 18:08:40.22#inc,ude <stdio.h>
static void foo(const int nest){
char x[1000*1000*1000];
x[0] = nest;
printf("%d\n", nest);
foo(nest + 1);
}
int main(){foo(0);}
これで、表示が一万以上いける環境書いてみな。
0674デフォルトの名無しさん
2011/06/18(土) 18:09:42.62言葉の意味を考えれば全て自明だと思うんだが
人生に疲れました
どうすればいいですか
0675デフォルトの名無しさん
2011/06/18(土) 18:14:29.90環境?はWindowsXP
コンパイラはgcc バージョン 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
0676デフォルトの名無しさん
2011/06/18(土) 18:36:28.23なぜそこで末尾再起のプログラム書くんだよ
最適化したらいくらでも(200000程度は確認)表示続いたぞ
cygwin の gcc version 4.3.4 20090804 (release) 1 (GCC)
0677デフォルトの名無しさん
2011/06/18(土) 18:36:46.040678デフォルトの名無しさん
2011/06/18(土) 18:41:39.80要素ごとにやらなきゃダメすか?
0679デフォルトの名無しさん
2011/06/18(土) 18:47:09.14まあ、意図はわかるだろ。
0680デフォルトの名無しさん
2011/06/18(土) 18:52:21.770681Perl忍者
2011/06/18(土) 19:12:05.86LL系言語
C言語のみんなこれフォロー
http://d.hatena.ne.jp/sugyan/20110616/1308203734
ここに乗ってるのフォローしてくださいお願いします
お願いですC言語のみなさんおねがいです
フォローしてください
お願いです 生活かかってます
0682Perl忍者
2011/06/18(土) 19:12:26.75フォローしてください
みんなこれフォロー
http://d.hatena.ne.jp/sugyan/20110616/1308203734
ここに乗ってるのフォローしてくださいお願いします
お願いですjavascriptのみなさんおねがいです
千なんて単位で再帰するようなプログラムはおいそれとは書けないが。
0684デフォルトの名無しさん
2011/06/18(土) 19:17:13.66「今すぐフォローすべきPerl界のスーパーエンジニア」
↓
http://d.hatena.ne.jp/sugyan/20110616/1308203734
ここに乗ってるのフォローしてくださいお願いします
お願いですRuby のみなさんおねがいです
0685デフォルトの名無しさん
2011/06/18(土) 20:20:55.00ごめん、理解力ない奴の相手する気はないんでな。
0686デフォルトの名無しさん
2011/06/18(土) 20:32:29.22すまん、ちょっと理解できないから意図を教えてくれ
>>670の「一万や二万は問題ない」に対して、
>>673で「一万以上いける環境書いてみな。」と言って
暗に一万以上いける環境なんてねーよって言ってるんだよな?
>>676でそうなってないことを指摘されて言いたいことがいえてないだけに見えるんだが違うのか?
0687デフォルトの名無しさん
2011/06/18(土) 20:36:48.710688デフォルトの名無しさん
2011/06/18(土) 20:39:27.950689デフォルトの名無しさん
2011/06/18(土) 20:49:00.87>>>676でそうなってないことを指摘されて言いたいことがいえてないだけに見えるんだが違うのか?
>>673 のコードは最適化オプションを付けてコンパイルすると、
コンパイラが勝手に再帰をループに変更してくれる(つまり
スタックを消費しない)、末尾呼び出しというタイプの再帰だから
ノーカウントだねって話だよ。
通常の再帰なら >>662 が書いている通り、ループの回数だけに
依存する問題ではない。
0690デフォルトの名無しさん
2011/06/18(土) 20:50:46.420691デフォルトの名無しさん
2011/06/18(土) 20:59:52.95質問者は量を聞いてるぞ?
その辺はっきりしてないと解釈さまざまだろ
0692デフォルトの名無しさん
2011/06/18(土) 21:24:28.550693Perl忍者
2011/06/18(土) 21:34:21.400694デフォルトの名無しさん
2011/06/18(土) 22:02:42.96単に難癖つけてるだけならまだわかるけど、マジで言ってるなら
>>689 の指摘通り単なるアホだぞ。
>>691
解釈どうのこうの以前に、プログラムの内容と環境しだいだろ。
0695デフォルトの名無しさん
2011/06/18(土) 22:03:58.60SetCoeff(a,5,4);
とかやっても5時の係数が4になってくれません。
例が少ないのでどうしたらいいのかもわかりません。
どなたかNTLライブラリの使い方を知っている人がいたら教えてください。
よろしくお願いします。
0696デフォルトの名無しさん
2011/06/18(土) 22:51:21.76入門の域を越えた質問は、該当ライブラリのスレか環境依存対応スレの方が回答が付き易いかと。
0697デフォルトの名無しさん
2011/06/18(土) 23:00:14.030698デフォルトの名無しさん
2011/06/18(土) 23:19:11.03ポインタと要素数渡すのが普通じゃね?
構造体で固めて渡すって手段もあるけど。
0699デフォルトの名無しさん
2011/06/18(土) 23:24:58.938回PUSHしたらもういっぱいorz
0700デフォルトの名無しさん
2011/06/18(土) 23:33:47.490701デフォルトの名無しさん
2011/06/19(日) 00:01:34.12SP を単なる 16bit レジスタとして目的外使用もするが原状回復して戻る
0702668
2011/06/19(日) 01:02:06.85#include<stdio.h>
#define N 50//itablに入力した数字が50以下だから
int main(void){
int itabl[]={40,19,31,49,35};//重複すると使えない
int count[N]={0};
int k,i;
int max=0;
printf("before\n");
for(k=0;k<5;k++){
printf("%d\n",itabl[k]);
}
for(i=0;i<5;i++){
count[itabl[i]]+=1;
if(itabl[i]>max)
max=itabl[i];
}
printf("\n");
for(i=0;i<50;i++){
printf("count[%d]=%d\n",i,count[i]);
}
printf("\n");
0703668
2011/06/19(日) 01:04:40.75k=0;
for(i=max;i>=0;i--){
if(count[i]>0){
itabl[k]=i;
k=k+1;}
}
printf("after\n");
for(i=0;i<5;i++){
printf("%d\n",itabl[i]);
}
return 0;
}
0704デフォルトの名無しさん
2011/06/19(日) 19:04:04.09int a=1;
と
static int a=1;
の違いってある?
0705デフォルトの名無しさん
2011/06/19(日) 20:25:54.070706デフォルトの名無しさん
2011/06/19(日) 20:46:45.360707デフォルトの名無しさん
2011/06/19(日) 21:16:19.970708デフォルトの名無しさん
2011/06/19(日) 21:33:23.590709デフォルトの名無しさん
2011/06/19(日) 21:49:44.38エラーとか出ないけど(VC2008で確認)。
0710デフォルトの名無しさん
2011/06/19(日) 21:53:08.220711デフォルトの名無しさん
2011/06/19(日) 22:03:31.780712デフォルトの名無しさん
2011/06/19(日) 22:14:12.04そのレスは流石に色々まずいんじゃないか?
0713デフォルトの名無しさん
2011/06/19(日) 22:33:57.900714デフォルトの名無しさん
2011/06/19(日) 22:38:17.54何がだよ? >>704に対するレスだぞ?
0715デフォルトの名無しさん
2011/06/19(日) 22:51:50.92int a = 1;
と
グローバル変数の
static int a = 1;
の違いを聞いてるんだろ
0717デフォルトの名無しさん
2011/06/19(日) 23:20:09.460718デフォルトの名無しさん
2011/06/19(日) 23:32:49.73言いたいことがあるなら、はっきり言った方がいいぞ。
0719デフォルトの名無しさん
2011/06/19(日) 23:33:26.260720デフォルトの名無しさん
2011/06/19(日) 23:36:57.950721デフォルトの名無しさん
2011/06/19(日) 23:36:58.610722デフォルトの名無しさん
2011/06/19(日) 23:43:01.22static int a=1;
void main()
{
printf("%d\n",a);
}
変数aがグローバル変数で無いならなんなの?
0723デフォルトの名無しさん
2011/06/19(日) 23:44:48.35ファイル分割とかやったことなさそう
0724デフォルトの名無しさん
2011/06/19(日) 23:46:12.64static int b; //静的変数。値が保持される。
func(){
static int c; //変数b同様。func内のみ参照可能。
{
static int d; //変数c同様。{ } 内のみ参照可能。
}
}
0725デフォルトの名無しさん
2011/06/19(日) 23:47:56.94ひょっとして上の方のファイルスコープというキーワードが見えてない人なの?
0726デフォルトの名無しさん
2011/06/19(日) 23:50:46.490727デフォルトの名無しさん
2011/06/19(日) 23:54:02.75bとcdのstaticは意味が違うだろ
0728デフォルトの名無しさん
2011/06/19(日) 23:55:34.36一緒。
0729デフォルトの名無しさん
2011/06/19(日) 23:57:50.81ググレばそれなりの回答にたどりつくと思う。
むしろ意味わかってないのは >>708 だと思う。
0730デフォルトの名無しさん
2011/06/19(日) 23:59:47.41プログラムの「全体」から見えるスコープのこと。このスコープに属する変数は大域変数といわれる。
BASICのような単純な言語では大域スコープしか存在しない場合がある。
ファイルスコープ (file scope)
大域スコープと似ているが、プログラムを記述したファイルの内側でのみ参照できるスコープ。
プログラムが複数のファイルから構成される場合は他のファイルから参照することはできない。
ローカルスコープ (local scope)
ある関数やブロックの範囲内に限定されたスコープのこと。
何を持って範囲を与えるかは言語により様々だが、
一般に入れ子のローカルスコープは外側を参照できるのが普通である。
このとき兄弟関係にあるスコープは見えない。
0732デフォルトの名無しさん
2011/06/20(月) 00:01:22.46ファイルスコープのグローバル変数って矛盾するでしょ
0733デフォルトの名無しさん
2011/06/20(月) 00:10:37.250734デフォルトの名無しさん
2011/06/20(月) 00:11:51.97じゃあ、なんて呼んでんの?
ただのstatic変数とはあきらかに違う変数だけど
0735デフォルトの名無しさん
2011/06/20(月) 00:15:00.06参照できる範囲が違うだけ。
グローバルは「外部から」参照できるって点が違う。
まったく別物。
0736デフォルトの名無しさん
2011/06/20(月) 00:16:50.51関数はでける
変数はexternつけないとでけない
externついた変数はカッコ悪いと思われることがある
0737デフォルトの名無しさん
2011/06/20(月) 00:19:25.520738デフォルトの名無しさん
2011/06/20(月) 00:20:20.21だからグローバル変数には extern は付かない。
0739デフォルトの名無しさん
2011/06/20(月) 00:24:28.77何をいってんだよ。
0740デフォルトの名無しさん
2011/06/20(月) 00:32:10.52ただし慣習的にプログラムの全領域からアクセスできる変数を、グローバル変数と呼んでいる。
>724では、aはグローバル変数だろうけど、bもグローバル変数かもしれない。
プログラムの翻訳単位が>724だけであればbをグローバル変数と呼んで構わないだろう。
Cの規格上では、すべての関数の外部で宣言された変数は外部結合を持ち、
staticが付いた変数は内部結合を持つ。
グローバルか否かを議論しても仕方ない。
それが分かっている人と、分かっていない人の議論がかみ合っていない。
0741デフォルトの名無しさん
2011/06/20(月) 00:33:38.13#include<stdio.h>
void test2(void)
{
printf("%d\n",a);
}
というソースを(拡張子は.c)同じプロジェクトに入れてコンパイルしたら
error C2065: 'a' : 定義されていない識別子です。
と言われた。
staticとっても言われた。
追加したほうのソースに
extern int a;
を書き加えたらstatic無しはコンパイル完了。
staticありは
error LNK2001: 外部シンボル "_a" は未解決です。
と言われた。
なんとなく違いがわかりました。
0742デフォルトの名無しさん
2011/06/20(月) 01:02:27.85#include<stdio.h>
int main(void)
{
double num;
printf("%fテステス\n",3.14);
printf("小数を入力しなさい\n");
scanf("%if",&num);
printf("入力された小数は%fです\n",num);
return 0;
}
と作成し、実行したのですが、
scanfで読み込ませた側の数値が
http://www.dotup.org/uploda/www.dotup.org1716590.jpg
うまく出力されません(つω;)一体どうしたら解決するのでしょうか?
0743デフォルトの名無しさん
2011/06/20(月) 01:07:32.810744デフォルトの名無しさん
2011/06/20(月) 01:12:23.04そういうことだったのか;;
長時間悩んでたなんて恥ずかしいorz
助かりました ありがとうございます!
0746デフォルトの名無しさん
2011/06/20(月) 02:26:56.200747デフォルトの名無しさん
2011/06/20(月) 02:36:02.480748デフォルトの名無しさん
2011/06/20(月) 02:43:10.110749デフォルトの名無しさん
2011/06/20(月) 02:52:03.730750デフォルトの名無しさん
2011/06/20(月) 03:03:42.79つ http://pc12.2ch.net/test/read.cgi/tech/1201153965/139
0751デフォルトの名無しさん
2011/06/20(月) 03:18:15.07今時のパソコン環境なら関数で隠蔽しても遅くならんだろうし
VBとかだとめんどくさいからどうしてもつかちゃうんだよね(やりたくないけど)
0752デフォルトの名無しさん
2011/06/20(月) 03:35:18.72確かに、どこからでも触れる(可能性のある)変数を、お手軽に宣言してしまうことが可能ですからね。読まなきゃならない側にとっては恐怖でしょうね。
こういった場合に備えて、お手軽にクロスリファレンスをとるには、どうすればいいのでしょうか。
0753デフォルトの名無しさん
2011/06/20(月) 03:48:44.90グローバル変数も変更箇所(出来ればひとつのファイル内)と参照箇所を分ければ
使えないことはないけど(ハマらないってことで)
そこまで考えてやれるかどうかだと
入門レベルの人の判断次第かな(その後地獄を見たくなければ)
0754デフォルトの名無しさん
2011/06/20(月) 04:06:00.34リンカだと(static をつけていない)関数も引っ張ってくるんじゃなかったかな?
できれば、変数だけをソースファイル名+論理行でいいから引っ張ってくれると、とってもうれしいのですが。
コールバック関数に値を渡すときには、どうしてもファイルスコープな、あるいは別モジュール宛てだったら全部に見える変数に、あー、してしまったりするんですけれども、やっぱりまずいですよね。
(途中の経路はまったく触れない)コールバック関数に、飛び越すように値を渡すにはどうすればいいでしょうね。
0755デフォルトの名無しさん
2011/06/20(月) 05:26:22.710756デフォルトの名無しさん
2011/06/20(月) 08:40:13.88C++かいな?
0757デフォルトの名無しさん
2011/06/20(月) 09:09:22.77コールバック関数とデータをまとめて構造体に包んで渡す
0758デフォルトの名無しさん
2011/06/20(月) 09:23:39.890759デフォルトの名無しさん
2011/06/20(月) 09:32:35.080760デフォルトの名無しさん
2011/06/20(月) 09:42:56.50ポータブルアセンブラ以上のことをCに望むな
0761デフォルトの名無しさん
2011/06/20(月) 13:11:30.18自作関数を駆使したらcuiのゲームくらいはつくれますか?
0762デフォルトの名無しさん
2011/06/20(月) 13:14:39.86生産性の問題だろ
0764デフォルトの名無しさん
2011/06/20(月) 15:36:13.53以前にもそういう質問があったから質問する前に
前レスをしっかり見よう。
と、質問した人間が申しております。
0765デフォルトの名無しさん
2011/06/20(月) 15:59:29.25各ノードに値をいれる方法をおしえてくださいm
0766デフォルトの名無しさん
2011/06/20(月) 16:03:57.390767デフォルトの名無しさん
2011/06/20(月) 17:03:03.300768デフォルトの名無しさん
2011/06/20(月) 19:22:41.63それは、途中をいじれる場合だと。
たとえば、
int pascal WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR pCmdLine, int nCmdShow) { .. }
の hInstance を
WNDCLASS winc;
winc.lpfnWndProc = WndProc;
RegisterClass(&winc)
CreateWindow()
を経て、
LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wp, LPARAM lp) {
の
switch (msg) {
case WM_CREATE:
のところで使いたい、たとえば、LoadIcon(hInstance, 12345) としたくても、なかなか思いつかないわけで。
んー、なんかあった気もするけど忘れてしまった‥‥‥。
0769デフォルトの名無しさん
2011/06/20(月) 19:27:50.76LoadIcon(hInstance, MAKEINTRESOURCE(12345));
だったね、たしか。
0770デフォルトの名無しさん
2011/06/20(月) 23:51:34.90みたいない処理って、一度ローカル変数にキャッシュした方がいい?
それともコンパイラを信じて任せた方がいい?
0771デフォルトの名無しさん
2011/06/20(月) 23:59:39.350772デフォルトの名無しさん
2011/06/21(火) 00:04:06.860773デフォルトの名無しさん
2011/06/21(火) 00:05:20.56int max(int a, int b)みたいな関数を用意して、
= max(func(a), func(b))とした。
0774デフォルトの名無しさん
2011/06/21(火) 00:06:01.93んだけどそこまで見て最適化してくれるものなのか?
0775デフォルトの名無しさん
2011/06/21(火) 01:34:04.370776デフォルトの名無しさん
2011/06/21(火) 01:35:13.61じゃない
0777デフォルトの名無しさん
2011/06/21(火) 01:42:43.72人のソースコード見てると、return文を書いてる人と書いてない人様々。
ようは好みの問題?
0778デフォルトの名無しさん
2011/06/21(火) 02:07:13.70デバッグするならあった方が便利。
0779デフォルトの名無しさん
2011/06/21(火) 02:08:55.490780デフォルトの名無しさん
2011/06/21(火) 02:27:04.43[2] 問題:1.以下のプログラムと等価になる様にprintf();内の穴埋め箇所を記述せよ。
等価したいプログラム
if( !(gender==1 || age >=20 ) )
printf("穴埋め1 \n");
if( !(!(gender==1) || age >=20) )
printf("穴埋め2 \n");
if( !(!(gender==1) || !(age >=20 ) )
printf("穴埋め3 \n");
if( !( gender==1) || !(age >=20) )
printf("穴埋め4 \n");
[3] 環境
[3.1] windouws
[3.2] gcc
[3.3] C言語
[4] 本日6月21日08時30分まで。
[5] 急ぎです;c言語の問題です。おねがいします;
0781デフォルトの名無しさん
2011/06/21(火) 02:29:07.582.201003121(10進数9桁)、性別(男:1、女:2)、年令(未成年:0,成年:1,高齢:2,後期高齢:3)、
職業(無:0、有:1)で個々人が16分類される。それぞれを数字(コード)で入力させ、
その人の状態を一旦ディスプレイに表示し、if文を使って、自然な文章で最後に表示するプログラムを作れ
0782デフォルトの名無しさん
2011/06/21(火) 02:54:37.64つhttp://hibari.2ch.net/test/read.cgi/tech/1307166756/
誤爆?
0783デフォルトの名無しさん
2011/06/21(火) 02:56:22.28宿題スレへ。
>>774
一般的に、関数呼び出しの回数を変更する最適化は行なわないよ。
その関数が同じコンパイル単位内にある場合は、やるかもしれない。
0784デフォルトの名無しさん
2011/06/21(火) 03:59:56.35RDBMSのストアドファンクションなんかだとそういうのがあったりするんだけど
0785デフォルトの名無しさん
2011/06/21(火) 09:59:22.95条件式成立時 func(a) 2回呼び出し func(b) 1回呼び出し
条件式非立時 func(a) 1回呼び出し func(b) 2回呼び出し
0786785
2011/06/21(火) 10:00:47.670787デフォルトの名無しさん
2011/06/21(火) 10:01:46.72お前の書き方が信じられない
0788デフォルトの名無しさん
2011/06/21(火) 11:39:02.92何が公式の情報ってないのかな?
0789デフォルトの名無しさん
2011/06/21(火) 12:58:25.440790デフォルトの名無しさん
2011/06/21(火) 13:08:04.49範囲外
0791デフォルトの名無しさん
2011/06/21(火) 16:02:49.360792デフォルトの名無しさん
2011/06/21(火) 20:48:20.85当たり前だ。どのカーネルでも同じ動作だ。
systemの戻り値がなんなのか考えたことはあるのか?
0793デフォルトの名無しさん
2011/06/21(火) 21:07:57.28このスパコンなら1兆個の数字のバブルソートも1秒以下でできるってこと
ですか?
0794デフォルトの名無しさん
2011/06/21(火) 21:11:33.08バブルソートを甘く見てるんじゃないかい?
0795デフォルトの名無しさん
2011/06/21(火) 21:13:17.130796デフォルトの名無しさん
2011/06/21(火) 21:15:33.560797デフォルトの名無しさん
2011/06/21(火) 21:18:22.27非常に効率が悪く実用的ではない
0798デフォルトの名無しさん
2011/06/21(火) 21:20:58.06|彡/二Oニニ|ノ /三三三!, |!
`,' \、、_,|/-ャ ト `=j r=レ /ミ !彡 ●
T 爪| / / ̄|/´__,ャ |`三三‐/ |`=、|,='| _(_
/人 ヽ ミ='/|`:::::::/イ__ ト`ー く__,-, 、 _!_ / ( ゚ω゚ )
/ `ー─'" |_,.イ、 | |/、 Y /| | | j / ミ`┴'彡\ ' `
バブルソート マージソート シェルソート クイックソート
バブルソート「俺に勝てるやつはいない!」
0799デフォルトの名無しさん
2011/06/21(火) 21:24:23.77っ ボゴソート
0800デフォルトの名無しさん
2011/06/21(火) 21:41:31.170801デフォルトの名無しさん
2011/06/21(火) 21:43:02.87並列化できない問題に対しては早くならないだろ
0802デフォルトの名無しさん
2011/06/21(火) 21:46:14.31勉強が足りないね
0803デフォルトの名無しさん
2011/06/21(火) 21:47:17.950804デフォルトの名無しさん
2011/06/21(火) 21:51:56.880805デフォルトの名無しさん
2011/06/21(火) 21:54:35.63グローバーのアルゴリズムとかを見れば分かるが
量子アルゴリズムにも厳然たる計算量の限界がある
0806デフォルトの名無しさん
2011/06/21(火) 21:55:52.87あるならいいじゃない
ないから大変なんじゃない
0807デフォルトの名無しさん
2011/06/21(火) 22:02:29.69たとえば人間が1無量大数だと言い張れば、無量大数になる。
そういう技術って無理かな?
0808デフォルトの名無しさん
2011/06/21(火) 22:05:32.58>そういう技術って無理かな?
目を瞑ればいい
0809デフォルトの名無しさん
2011/06/21(火) 22:05:44.610810デフォルトの名無しさん
2011/06/21(火) 22:07:04.080811デフォルトの名無しさん
2011/06/21(火) 22:09:39.14例えば夢で3個のりんごが机にあるのを発見する。
風が吹いて1個が机から落ちて2個になった。
夢だから
りんごがあるのも
風が吹くのも
りんごが落ちるのも思い込み
だけど思い込みなのに辻褄はあっている。
>>809
それすごいな。結局早いか遅いかってのは主観なんだよな。
客観を制御できたら主観ってどうなるんだろ。
0812デフォルトの名無しさん
2011/06/21(火) 22:18:04.16キャッシュすべき
コンパイラを信じるならおまえ自身がいらない
0813デフォルトの名無しさん
2011/06/21(火) 22:21:03.10どうしたらいいですか?サイト教えてください・・・
0814デフォルトの名無しさん
2011/06/21(火) 22:28:02.02それに対して人間は
1つの脳に対して細胞が150億個
人間がいかに優れた高性能コンピュータであるかが分かるな。
人間の脳ってどうなってんだろ・・・
0815デフォルトの名無しさん
2011/06/21(火) 22:30:39.77細胞換算ならトランジスタ数で比較したら?
0816デフォルトの名無しさん
2011/06/21(火) 22:31:24.93リフレッシュ回路に問題のある DRAM で動いている「高性能コンピュータ」
0817デフォルトの名無しさん
2011/06/21(火) 22:39:35.01それに対して人間の脳は細胞が150億個
人間がいかに優れた高性能コンピュータであるかが分かるな。
人間の脳ってどうなってんだろ・・・
0818デフォルトの名無しさん
2011/06/21(火) 22:41:27.00もっと違う世界があるかも知れないな
0819デフォルトの名無しさん
2011/06/21(火) 22:43:31.93状況に応じて最適化してくような事ができれば、
面白いかな
0820デフォルトの名無しさん
2011/06/21(火) 23:23:59.64それ普通にMLCなだけだろ
0821デフォルトの名無しさん
2011/06/21(火) 23:34:01.71ショートサーキットには入らないけど、そうなるね。
0822デフォルトの名無しさん
2011/06/21(火) 23:58:54.32ソニーのMDプレイヤーにFPGAを使った、まさにそう言う製品があったような・・・
0823デフォルトの名無しさん
2011/06/22(水) 00:33:26.20あら?
カーネル2.6と2.4じゃ動作が違うんですが・・・
ご存じない?
0824デフォルトの名無しさん
2011/06/22(水) 00:54:45.65何得意げに言ってんだバカ。いまどき2.4の話なんて誰がするかボケ。
0825デフォルトの名無しさん
2011/06/22(水) 03:55:41.42どのカーネルでもw
0826デフォルトの名無しさん
2011/06/22(水) 07:55:58.910827デフォルトの名無しさん
2011/06/22(水) 07:58:23.580828デフォルトの名無しさん
2011/06/22(水) 08:07:51.190829デフォルトの名無しさん
2011/06/22(水) 14:09:06.72変数a, bの値を入れ替えるベストな方法を教えてください
0830デフォルトの名無しさん
2011/06/22(水) 14:29:53.50整数型縛りならベクトル化したxor swap
0831デフォルトの名無しさん
2011/06/22(水) 14:42:04.170832デフォルトの名無しさん
2011/06/22(水) 14:45:52.70http://ja.wikipedia.org/wiki/%E3%82%BD%E3%83%BC%E3%83%88
0833デフォルトの名無しさん
2011/06/22(水) 16:29:53.040834デフォルトの名無しさん
2011/06/22(水) 17:15:13.450835デフォルトの名無しさん
2011/06/22(水) 17:21:44.200836デフォルトの名無しさん
2011/06/22(水) 17:22:34.020837デフォルトの名無しさん
2011/06/22(水) 17:43:54.220838デフォルトの名無しさん
2011/06/22(水) 17:50:35.05それはそもそも速いソートって言わないだろ
0839デフォルトの名無しさん
2011/06/22(水) 17:56:02.90まじで?
バイトニックソートとか言わないよね?
0840デフォルトの名無しさん
2011/06/22(水) 17:57:16.83「速い」を定義してくれ。
0841デフォルトの名無しさん
2011/06/22(水) 18:05:24.36○ 運に自信があるならソートする必要すらない
0842デフォルトの名無しさん
2011/06/22(水) 18:10:17.84ソート済みリストに要素追加してソートするときのような、ソート前に並びが決まってるような処理ならオーダーはlog(n)になるはず(二分探索して挿入してるだけなんだから)
別にあまり意味のあることじゃない
これ言い出したらソートされてるものをソートする時はとか言い出してきそうだし
0843デフォルトの名無しさん
2011/06/22(水) 18:47:49.010844デフォルトの名無しさん
2011/06/22(水) 18:50:10.25スタックがあふれましたぁ。
0845デフォルトの名無しさん
2011/06/22(水) 18:52:44.780846デフォルトの名無しさん
2011/06/22(水) 18:55:55.35自前で用意したヒープ上のスタック構造が「想定外」の入力であふれましたぁ。
0847デフォルトの名無しさん
2011/06/22(水) 21:13:45.03意味ない事をわざわざ書き込むなよwww
0848デフォルトの名無しさん
2011/06/22(水) 21:22:52.65何が原因ですか?
enum mode {dog=0,cat,};
struct table {int key; char *opt;};
static struct table opt1[] = {
{.key=dog,.opt="-dog",},{.key=cat,.opt="-cat",},
};
***
int cmp(const void *m1, const void *m2){
〜省略〜
return strcmp(mi1->opt, mi2->opt);}
*** main
struct table key; key.opt=argv[1];
lfind(&key,opt1,(size_t*)opt1,sizeof(struct table),(int(*)(const void*, const void*))cmp);
0849デフォルトの名無しさん
2011/06/22(水) 21:36:28.210850デフォルトの名無しさん
2011/06/22(水) 23:40:44.80インクリメントと1代入どっちが速いの?
0851デフォルトの名無しさん
2011/06/22(水) 23:41:21.55ほかでききます
0852デフォルトの名無しさん
2011/06/23(木) 06:33:48.981代入なら代入だけだし。
0853デフォルトの名無しさん
2011/06/23(木) 07:16:10.06inc eax
mov eax,1
昔いじったスパコンは0クリアは常に0が入ってるレジスタをコピーしてた。
どっちが早いんだろうねぇ。
0854デフォルトの名無しさん
2011/06/23(木) 07:53:44.87なんで確認が必要なんだ。
>1代入なら代入だけだし。
即値が必要な分、遅いCPUもあるね。
>xor eax,eax
「0のものを1にする」ってのは、一旦0にするという意味なのか?
>昔いじったスパコンは0クリアは常に0が入ってるレジスタをコピーしてた。
そのスパコンには、レジスタ間xorみたいなインストラクションがなかったんでね?
>どっちが早いんだろうねぇ。
まぁ、どの途誤差だ。
0855デフォルトの名無しさん
2011/06/23(木) 08:21:25.20RISCなど、特に3オペランド命令に対応するマイクロプロセッサで用意されることの多いレジスタで、
一般には汎用レジスタの一つをゼロレジスタとする。
例えば、R0?R31まで32個用意される汎用レジスタのうち、R0をゼロレジスタとするような製品がある。
こうして、3オペランド命令しかない中でも、オペランドが二つで充分な演算をする際にゼロレジスタを用いることで
演算を行なうことができる。例えば、A←Bという代入命令は、A←B+0という加算命令で書くことができる。
0856デフォルトの名無しさん
2011/06/23(木) 09:16:35.34ゲームの方もちゃんと面白いんだぞ!
0857デフォルトの名無しさん
2011/06/23(木) 11:41:51.270858デフォルトの名無しさん
2011/06/23(木) 11:43:12.950859デフォルトの名無しさん
2011/06/23(木) 11:49:24.85または式の結果をビット列にpackしてpopcount == 1
if (
! cond0 && cond1 && cond2 ||
! cond1 && cond2 && cond0 ||
! cond2 && cond0 && cond1) ;
if (foo == 6 || foo == 5 || foo == 3) ;
0862デフォルトの名無しさん
2011/06/23(木) 12:00:58.610863デフォルトの名無しさん
2011/06/23(木) 12:02:39.39if( (cound0+cond1+cond2)==True2) {
...
};
99%バグる。
0864デフォルトの名無しさん
2011/06/23(木) 12:03:24.11それだとごくまれに失敗しないか?
0865デフォルトの名無しさん
2011/06/23(木) 12:08:37.080866デフォルトの名無しさん
2011/06/23(木) 12:12:50.78何を期待しているの?
0867デフォルトの名無しさん
2011/06/23(木) 12:16:42.75送信データの未到達判定には送信データにシーケンス番号付与が1番いいの?
後、未到達を感知したら即再送していいのかな?
ウエイトいれた方がいいの?
0868デフォルトの名無しさん
2011/06/23(木) 12:20:24.74下剤じゃね?
0869デフォルトの名無しさん
2011/06/23(木) 12:21:40.63おもしろい
0870デフォルトの名無しさん
2011/06/23(木) 12:30:28.55うん
いや
0871デフォルトの名無しさん
2011/06/23(木) 12:40:51.790872デフォルトの名無しさん
2011/06/23(木) 13:20:02.510873デフォルトの名無しさん
2011/06/23(木) 13:22:35.470874デフォルトの名無しさん
2011/06/23(木) 13:24:59.08実験したことはないけど。
0875デフォルトの名無しさん
2011/06/23(木) 13:26:34.3417ミリ秒間隔で、データの送受信が出来るならTCP使ってるよw
0876デフォルトの名無しさん
2011/06/23(木) 13:30:10.88くだらない
0877デフォルトの名無しさん
2011/06/23(木) 13:31:34.23知っててもこの仕様どうよって感じ。
0878デフォルトの名無しさん
2011/06/23(木) 13:33:47.410879デフォルトの名無しさん
2011/06/23(木) 14:16:00.68・UDPほど早くないけど TCPよりは早いかもしれない
・ストリームではなくデータグラム
0880デフォルトの名無しさん
2011/06/23(木) 14:18:11.79よくわからんので解説頼む
0881デフォルトの名無しさん
2011/06/23(木) 14:18:36.37SCTP
0882デフォルトの名無しさん
2011/06/23(木) 14:18:53.570883デフォルトの名無しさん
2011/06/23(木) 14:30:09.22�d
概要はこんなのか
ttp://www.asahi-net.or.jp/~aa4t-nngk/ipttut/output/sctpcharacteristics.html
おもしろそうだ
0884デフォルトの名無しさん
2011/06/23(木) 14:45:57.32できる
0885デフォルトの名無しさん
2011/06/23(木) 15:00:13.80昨日低脳とであった
0886デフォルトの名無しさん
2011/06/23(木) 21:13:17.160887デフォルトの名無しさん
2011/06/23(木) 23:27:49.110888デフォルトの名無しさん
2011/06/24(金) 12:31:16.150889デフォルトの名無しさん
2011/06/24(金) 20:15:52.970890デフォルトの名無しさん
2011/06/24(金) 20:17:54.74void kansu(void){
void kansu2(void);
}
としてもエラーがでないのは何故ですか?
正しく実行されないけれども。
0891デフォルトの名無しさん
2011/06/24(金) 20:20:07.32関数宣言だから
0892デフォルトの名無しさん
2011/06/24(金) 20:24:47.84どういうこと?
0893デフォルトの名無しさん
2011/06/24(金) 20:27:44.06引数なし返り値無しののkansu2っていう関数を宣言してる
0894デフォルトの名無しさん
2011/06/24(金) 20:28:55.90じゃぁ何で main内で宣言したらエラーになるんですか?
0895デフォルトの名無しさん
2011/06/24(金) 20:30:43.24お前が馬鹿だからっていうか
他のところでエラーだしてるんだよ
0896デフォルトの名無しさん
2011/06/24(金) 20:33:54.93ウチはエラー出ないよ?
% cat foo.c
int main() { void foo(void); }
% gcc -std=c99 -W -Wall foo.c
%
0897デフォルトの名無しさん
2011/06/24(金) 20:35:28.550898デフォルトの名無しさん
2011/06/24(金) 20:40:26.460899デフォルトの名無しさん
2011/06/24(金) 20:43:41.77いや、関数呼び出すときにね、kansu(void);だと
エラーがでる。
kansu();
だとエラーがでなくて単位は取れた。
0900軟骨 ◆Hone.S333c
2011/06/24(金) 20:46:42.980901デフォルトの名無しさん
2011/06/24(金) 20:46:52.04いやってなんだよwwwwwww
main内に移したからじゃねーだろーが禿
死ね
0902デフォルトの名無しさん
2011/06/24(金) 20:47:31.98voidの扱いはそういうもんだと丸暗記しとけ
0903デフォルトの名無しさん
2011/06/24(金) 20:51:59.31宣言は型を書かなければならない。でしょ?
0904デフォルトの名無しさん
2011/06/24(金) 20:54:24.670905デフォルトの名無しさん
2011/06/24(金) 20:57:35.04例えばpow(3,-1)だと1/3と一緒ですか?
0906デフォルトの名無しさん
2011/06/24(金) 21:05:28.380907デフォルトの名無しさん
2011/06/24(金) 21:12:22.85powだと間違い?
0908デフォルトの名無しさん
2011/06/24(金) 21:17:37.200.00000e+00
orz・・・
0909デフォルトの名無しさん
2011/06/24(金) 21:22:48.260910デフォルトの名無しさん
2011/06/24(金) 21:26:14.17それならpowのほうがいいな・・・
pow(3,-1)=0.333333
0911デフォルトの名無しさん
2011/06/24(金) 21:32:26.900912デフォルトの名無しさん
2011/06/24(金) 21:41:06.103.234/1.3423でいいんですか?
0913デフォルトの名無しさん
2011/06/24(金) 22:39:42.49それで望んだ通りの結果が得られるのなら、それでいいだろ。
0914デフォルトの名無しさん
2011/06/24(金) 23:55:28.65C言語のプログラムで、別のモニタやらテレビに出力したいんですが、ソフトだけで可能なんでしょうか。
0915デフォルトの名無しさん
2011/06/25(土) 00:03:16.41可能です。この前もそういうソフト作って納品しました。
0916デフォルトの名無しさん
2011/06/25(土) 01:17:37.66不可能です
>>915
おまえは虚言癖を治療しろw
0917デフォルトの名無しさん
2011/06/25(土) 01:23:05.82質問の意味が分かりません
接続されていないモニタやらテレビに「念写」したいということでしょうか?
0918デフォルトの名無しさん
2011/06/25(土) 01:38:42.76そうです、ソフトだけで可能なんでしょうか?
0919914
2011/06/25(土) 01:41:46.400920デフォルトの名無しさん
2011/06/25(土) 01:46:20.010921914
2011/06/25(土) 11:05:10.29わかんないけど、PCに繋いでいるようなモニタの端子(規格しらん)に信号を送ればうつるんでしょう?
別マシンから、なんらかのケーブルで繋いで、Cのプログラムで信号送れますかとか。ライブラリはなに使いますとか接続は何でつなぐとか。
なかんじです。
テレビだったら、なんつーケーブルでつなぐとか…
すべてあいまいなうすい感じでさーせん。
0922デフォルトの名無しさん
2011/06/25(土) 11:08:38.480923デフォルトの名無しさん
2011/06/25(土) 11:13:31.380924デフォルトの名無しさん
2011/06/25(土) 11:18:55.900925デフォルトの名無しさん
2011/06/25(土) 11:30:18.730926デフォルトの名無しさん
2011/06/25(土) 12:17:08.10そもそもなんでそんな話になったのか辺りから詳しく。
それによって、回答も変わってくる。
0927デフォルトの名無しさん
2011/06/25(土) 12:44:24.740928デフォルトの名無しさん
2011/06/25(土) 14:14:01.43どうしたらいいですか?
0929デフォルトの名無しさん
2011/06/25(土) 14:15:05.820930928
2011/06/25(土) 14:17:26.180931デフォルトの名無しさん
2011/06/25(土) 14:56:12.770932デフォルトの名無しさん
2011/06/25(土) 15:12:45.370933デフォルトの名無しさん
2011/06/25(土) 15:39:17.980934デフォルトの名無しさん
2011/06/25(土) 16:43:43.79ソフト使った方がいいですか?
ソースコードで作った方が良いのですか?
0935デフォルトの名無しさん
2011/06/25(土) 16:47:24.950936デフォルトの名無しさん
2011/06/25(土) 16:49:59.900937デフォルトの名無しさん
2011/06/25(土) 16:57:23.26画面のデザインのこといってるのなら、IDE環境でやったら
0938934
2011/06/25(土) 17:01:40.01画面を使った開発をしたいんですが どうしてますか?
0939デフォルトの名無しさん
2011/06/25(土) 17:03:13.02ありがとうございます 参考にさせて頂きます。
0940デフォルトの名無しさん
2011/06/25(土) 17:08:24.65聾唖の方なのかな。
0941デフォルトの名無しさん
2011/06/25(土) 17:14:47.450942デフォルトの名無しさん
2011/06/25(土) 17:15:07.87ど素人さんなんだから
0943デフォルトの名無しさん
2011/06/25(土) 17:19:43.190944デフォルトの名無しさん
2011/06/25(土) 17:20:54.690945デフォルトの名無しさん
2011/06/25(土) 17:25:03.02目は見えるんだな、と。
0946デフォルトの名無しさん
2011/06/25(土) 19:09:44.01そのハード用のC言語コンパイラと資料があれば可能でしょう。
0947デフォルトの名無しさん
2011/06/25(土) 19:13:39.61画面を使った開発と画面を使わない開発ってそれぞれどんなものを思い浮かべているのか?
0948デフォルトの名無しさん
2011/06/25(土) 19:19:35.81sui
0949デフォルトの名無しさん
2011/06/25(土) 19:22:39.71何の略か分からなくて調べてしまった
0950デフォルトの名無しさん
2011/06/25(土) 19:31:49.160951デフォルトの名無しさん
2011/06/25(土) 19:37:59.94どっちに答えるかによって内容が全然ちがう
0952デフォルトの名無しさん
2011/06/25(土) 20:14:06.78複数の翻訳単位でインクルードされているヘッダファイルがあって、
const char* はextern をつけているからコンパイルエラーがでないのですが
extern をつけていないenumが多重定義エラー出ないのはなぜでしょうか?
0953デフォルトの名無しさん
2011/06/25(土) 20:21:29.830954デフォルトの名無しさん
2011/06/25(土) 21:01:24.03にすると出なくなるよ
0955デフォルトの名無しさん
2011/06/25(土) 21:04:40.150956デフォルトの名無しさん
2011/06/25(土) 21:20:00.03もしかして1つのソースファイル内でCとAPIを一緒に使うことってできないんですか?
0957デフォルトの名無しさん
2011/06/25(土) 21:21:12.700958デフォルトの名無しさん
2011/06/25(土) 21:28:38.83cannot use local functions
、です。
余計なことは、というか何もしないプログラムですが・・・
0959デフォルトの名無しさん
2011/06/25(土) 21:29:31.89言葉足らずでごめんなさい。
正常にできなかったってことです。
0960デフォルトの名無しさん
2011/06/25(土) 21:30:22.990961デフォルトの名無しさん
2011/06/25(土) 21:32:28.82修行して出直します。
0962デフォルトの名無しさん
2011/06/25(土) 21:38:48.26二度とくんな
0963962
2011/06/25(土) 21:42:25.680964デフォルトの名無しさん
2011/06/25(土) 22:29:55.81mainとWinMainはどっちかしか呼べんだろ
それ以外の関数は、どっちのメイン関数書いたコードからでも呼べるものもある
基本的に、GUI/CUIに依存してない関数は相互に呼び出せる
試しにmain関数からMessageBox関数呼んでみれ
0965デフォルトの名無しさん
2011/06/25(土) 23:12:19.19それだけ人との接触が少ない孤独な人間が増えていると言うことだろうか
0967デフォルトの名無しさん
2011/06/26(日) 00:06:51.33> cannot use local functions
0968デフォルトの名無しさん
2011/06/26(日) 07:03:07.57http://www.argojp.com/eigyoubu/10060924_02.jpg
0969デフォルトの名無しさん
2011/06/26(日) 11:07:27.230970デフォルトの名無しさん
2011/06/26(日) 12:39:28.31× プログラマー → ○ プログラマ
× アルツハイマー → ○ アルツハイマ
× ぷよぷよフィーバー → ○ ぷよぷよフィーバ
× アクセスカウンター → ○ アクセスカウンタ
0971デフォルトの名無しさん
2011/06/26(日) 13:18:55.23どうしたものか
0972デフォルトの名無しさん
2011/06/26(日) 13:24:59.79文科省に文句言えよ
0973デフォルトの名無しさん
2011/06/26(日) 13:30:07.98文句言いたいわけじゃないよ
どうしようかなって悩んでるだけだよ
0974デフォルトの名無しさん
2011/06/26(日) 14:14:20.83呼べるよタコ助
0975デフォルトの名無しさん
2011/06/26(日) 14:17:43.24但しどちらかに統一しろ。混ぜるな。
0976デフォルトの名無しさん
2011/06/26(日) 14:48:53.07JIS 関連だから、経産省じゃね?
0977デフォルトの名無しさん
2011/06/26(日) 14:51:55.780978デフォルトの名無しさん
2011/06/26(日) 14:52:35.990979デフォルトの名無しさん
2011/06/26(日) 15:20:23.96悩むことかよ。文科省が伸ばせっつってんだから伸ばしとけ。
0980デフォルトの名無しさん
2011/06/26(日) 17:55:33.99統一しておけば問題ない。
0981デフォルトの名無しさん
2011/06/26(日) 18:50:02.390982デフォルトの名無しさん
2011/06/26(日) 19:20:48.91低レベルだな
0983デフォルトの名無しさん
2011/06/26(日) 19:27:13.58どのような計算で求められるのかで迷ってます
ぜひ教えてください
0984デフォルトの名無しさん
2011/06/26(日) 19:28:22.580985デフォルトの名無しさん
2011/06/26(日) 19:45:03.780986デフォルトの名無しさん
2011/06/26(日) 19:54:04.80それによって得られたベクトルを回転させる
回転させたベクトルに中心の座標を足す
0987デフォルトの名無しさん
2011/06/26(日) 19:55:56.03>>985
>>986
反応するなクズ
0988デフォルトの名無しさん
2011/06/26(日) 19:58:24.37ようクズ、元気か?
0989デフォルトの名無しさん
2011/06/26(日) 20:26:00.15(スレタイ=C言語なら俺に聞け)
0990デフォルトの名無しさん
2011/06/26(日) 21:01:14.880991デフォルトの名無しさん
2011/06/26(日) 21:03:25.97C言語なら俺に聞け(入門編)Part 86
http://hibari.2ch.net/test/read.cgi/tech/1309089793/
0992デフォルトの名無しさん
2011/06/26(日) 21:05:15.200993デフォルトの名無しさん
2011/06/26(日) 21:06:51.160994デフォルトの名無しさん
2011/06/26(日) 21:31:12.680995デフォルトの名無しさん
2011/06/26(日) 21:32:46.10キャッシュメモリの特性との関係を調べるためにCで書く課題です
gettimeofday関数を使って演算時間を調べるというものなのですがここで聞いてもいいんでしょうか?
0996デフォルトの名無しさん
2011/06/26(日) 21:35:25.79>>1をよめ
0997995
2011/06/26(日) 21:42:51.88宿題スレにいけばいいんでしょうか?
0998デフォルトの名無しさん
2011/06/26(日) 21:55:07.43ある程度具体的に質問したいならここで聞いてみれば答えが帰ってくるかも
うめ
0999デフォルトの名無しさん
2011/06/26(日) 23:23:32.411000デフォルトの名無しさん
2011/06/26(日) 23:26:08.24C言語なら俺に聞け(入門編)Part 86
http://hibari.2ch.net/test/read.cgi/tech/1309089793/
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。