1104
c语言
scanf遇到第一个blank tab newline后停止转换语句后要说明
printf("%010.2f",ss)0为一个标志填充字段
打印较长字符串 printf有返回值检查错误
分两行代码 or
printf( \
)
or printf(""
"")
字符串读进数组不用&
%*d滞后赋值 scanf("%*d %*d %d",&n)第三个值赋予
scanf return 1 is true false is -1 use while to judge
prinf中是字段宽度 print("%*d",width,sss)
1:21 2014年10月13日
接收三重赋值 c90允许 s=+12
浮点数取模无效
6+(c=3+8)合法
c=50 ==c+50 副作用的原理 ;号和和明确语句if()里的必须被执行
(type)指派运算符
aa=1,2 aa=1
aa=(1,2) aa=2
字符串也是字符数组,只是后加/0
main()是驱动程序的例子
#define space " "
!= is higher than =
so use((ch=gethar())!='/n')
(patice&&time)==perfect
占位符?
default is no break
no defult all case will solve?
const 只读数组
if we need a compare
input had to save in ch
ch=getchar()
完全缓冲和行缓冲
c处理一个流
重定向?
SSDsaad(void)
void 只能返回一个值
13:09 2014年10月29日
数组部分初始化默认为0
c99 int arr[6]={[5]=666}
只能单个赋值
digtal mars8.4
对数组使用符号常量避免0
int arr[n] c99ok
顺序存储 int arr[2][3] arr两个元素分别包含3个int ={{,,},{,,}}
flizny==&flizny首元素的内存地址 flizny is a array
dates+2=&date[2]
*(dates+2)==dates[2]
int sum(int *ar,int n)==int sum(int ar[],int n)中使用数组
total=*start++ *与++有共同优先级
int *p 后必须要有一个确定的地址值赋予
arr=arr[0]=arr[0][0]
arr+1 is different from arr[0]
arr[0]+1==*arr+1
指针赋值严格
只进行一次简接运算 no const can changeto const
void sda(int (*h)[4])
h is function 形式参量 can use
void sda(int h[][4])
变长数组意味着可以定义长度
复合文字·
int as[2] ={1,2} ==
int *as
as=(int [2]){1,2}