使用目的 | 型名 | 入れ物の大きさ | 表現できる数値の範囲 |
---|---|---|---|
文字型 (文字を代入するために使う) | char
| 8 bit | 0 〜 28-1 (0 〜 255) |
整数型 (整数を代入するために使う) | short
| 16 bit | -215 〜 215-1 (-32,768 〜 32,767) |
int
| 16 bit(16bitコンピュータの場合) または, 32 bit(32bitコンピュータの場合) | -215 〜 215-1 (-32,768 〜 32,767) または, -231 〜 231-1 (-2,147,483,648 〜 2,147,483,647) | |
long
| 32 bit | -231 〜 231-1 (-2,147,483,648 〜 2,147,483,647) | |
浮動少数点型 (実数を代入するために使う) | float
| 32 bit | 約 ±10-38 〜 ±1038 |
double
| 64 bit | 約 ±10-308 〜 ±10308 |
malloc(size)
というライブラリ関数(引数のsize
には,確保したいメモリ領域の大きさ(入れ物の大きさ)を,バイト数で与える)を用いていたのですが,size
に数値を与えるコードを書いてしまっていました。
#include
int main(void)
{
int n ;
float d, ans ;
d = 0.0001 ;
ans = 0. ;
for( n = 1 ; n <= 10000 ; n++ ){
ans += d ;
}
if( ans == 1. ){
printf("\n0.0001を,10000回足し算すると,1になります。\n") ;
}
else{
printf("\n0.0001を,10000回足し算すると,1にはなりません。\n") ;
printf("答えは,%f\n", ans) ;
}
}
char cx ;
cx = 'a' ;
このように,文字を ' '
(一重引用符)で囲むことによって,その文字がある一意の整数に変換され,その数値が変数 cx に代入されることになります。putchar()
や,printf()
を用いることによって,収められた文字を画面表示することができます。
putchar(cx) ;
あるいは,
printf("%c", cx) ;
など。
printf("%d", (short)cx) ; /* 変換指定子を,%c ではなくて,%d としている */
#include <math.h>
.
.
.
int main(void)
{
.
.
.
}
とする。gcc
の -lm
というオプションを指定する。$ gcc -o list7-11 list7-11.c -lm(enter)
gcc
は, -lm
オプションを指定して起動すると,コンパイルの最終フェーズにおいて,libm.a を自分の書いたプログラムにリンクして(結合して)くれます。関数名 | 機能 | 引数の型 | 関数返却値の型 |
---|---|---|---|
exp(x)
| 指数関数,ex | double | double |
log(x)
| 自然対数,logex | double | double |
log10(x)
| 常用対数,log10x | double | double |
sqrt(x)
| xの平方根 | double | double |
pow(x, y)
| べき乗,xのy乗,xy | double | double |
hypot(x, y)
| sqrt( x2 + y2 ) | double | double |
sin(x)
| サイン,xの単位はラジアン | double | double |
cos(x)
| コサイン,xの単位はラジアン | double | double |
tan(x)
| タンジェント,xの単位はラジアン | double | double |
asin(x)
| アークサイン(サインの逆関数), -π/2〜π/2の値が返される。xは-1〜1 | double | double |
acos(x)
| アークコサイン(コサインの逆関数), 0〜πの値が返される。xは-1〜1 | double | double |
atan2(y, x)
| y/xのアークタンジェント(タンジェントの逆関数), -π〜πの値が返される。 | double | double |
sinh(x)
| ハイパボリック・サイン | double | double |
cosh(x)
| ハイパボリック・コサイン | double | double |
tanh(x)
| ハイパボリック・タンジェント | double | double |
abs(k)
| 整数の絶対値,|k| | int | int |
labs(k)
| long型整数の絶対値,|k| | long | long |
fabs(x)
| 浮動小数点数の絶対値,|x| | double | double |
man
コマンドで調べることができます。exp()
関数の詳細を調べるためには,以下のように入力します。$ man exp(enter)
exp()
関数の使い方(オンラインマニュアル)を読むことができます。man
コマンドでUNIXコマンドのオンラインマニュアルが見られることを説明しましたが,man
コマンドを使うと,このようにC言語のオンラインマニュアルも見ることができるのです。このようなことからも,UNIXとC言語の関係の深さを知ることができますね。gcc
の -lm
というオプションを指定する。
(重要) 出席登録のための実習問題は,授業時間中に必ず提出して下さい。
音圧[Pa]を入力してください。:2(enter) 音圧レベルは100 dBです。 |
音圧レベル[dB]を入力してください。:100(enter) 音圧は2 Paです。 |
(重要) 宿題の締切は次の授業が始まる前までとします。きちんと動作をチェックしてから,提出して下さい。