Chinaunix首页 | 论坛 | 博客
  • 博客访问: 236864
  • 博文数量: 113
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1044
  • 用 户 组: 普通用户
  • 注册时间: 2015-02-15 16:09
文章分类

全部博文(113)

文章存档

2016年(5)

2015年(108)

我的朋友

分类: C/C++

2015-08-13 16:16:43


点击(此处)折叠或打开

  1. /*argcargv.c*/
  2. #include<stdio.h>
  3. #include<string.h>
  4. #include<stdlib.h>
  5. int main(int argc,char *argv[])
  6. {
  7.     if(argc==1)
  8.         printf("USAGE:\n");
  9.     if(argc==2)
  10.         printf("port=%d\n",atoi(argv[1]));
  11.     if(argc==3)
  12.         printf("ip=%s,port=%d\n",argv[2],atoi(argv[1]));
  13.     return 0;
  14.     
  15. }
  16. /*atoi将字符串转化为整数*/
  17. [root@iZ94tdwp8ysZ server]# gcc argcargv.c -o argcargv
    [root@iZ94tdwp8ysZ server]# ./argcargv 5008 127.0.0.1
    ip=127.0.0.1,port=5008


**双指针的解释:

#include
#include
#include
int main(int argc,char* argv[]){
char *name="hello";
char **p;
p=&name;
while(1){
printf("%s\n",*p);
sleep(1);
}
return 0;

}
这里的双指针,必须是char*name 和char **p,然后p=&name
,而char   name[]不能使用。
************************************************************************
**
void *类型可以转化成其他*型的变量。

struct的知识:
#include
#include
struct student{
char name[10];
int count;
}st1={"hello",20};//结构体初始化
int main(int argc,char* argv[]){
printf("%s %d\n",st1.name,st1.count);
return 0;
}
//结构体数组的初始化
struct student{
char name[10];
int count;
}st1[3]={"hello",20,"world",10,"root",12};//结构体初始化

静态链表:

#include
struct Person{
int num;
float score;
struct student *next;
};
int main(int argc,char* argv[]){
struct Person a,b,c,*head,*p;
head=&a;
a.next=&b;
b.next=&c;
c.next=NULL;
p=head;
while(p!=NULL){
printf("%d  %f\n",p->num,p->score);
sleep(1);
p=p->next;
}
return 0;
}

fgets  和fputs函数讲解:
fgets(str,n,fp)从fp指向的文件读入一个长度为(n-1)的字符串,存放到字符数组str中。
fputs(str,fp);把str字符串输出到指向fp的文件。


输入输出到文件的函数:
fprintf(fp,"%s %d",a,b)函数
fscanf(stdin,"%s",&a)函数

fread和fwrite函数的使用要格外注意。。
fseek(fp,100L,0);将文件位置标记向前移到离文件开头100个字节处。
fseek(fp,50L,1);将文件位置标记向前移到离当前位置100个字节处。
fseek(fp,-10L,2);将文件位置标记移动到文件末尾10个字节处。
阅读(1153) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~