ʵÑéÒªÇó£º
1.±àд»ùÓÚTCPÐÒéµÄͨÐųÌÐò£¬°üÀ¨ServerÓëClientÁ½¸ö²¿·Ö¡£ÊµÏÖ»ØÉù³ÌÐò£º¼´¿Í»§¶Ë·¢ËÍÏûÏ¢£¬·þÎñÆ÷¶Ë½«ÊÕµ½µÄÏûÏ¢ÔÑù»áË͸ø¿Í»§¶Ë¡£
2.ÔÚµ¥»úÉÏÔËÐÐËüÃÇ£¬ÑéÖ¤ÆäͨÐŽá¹û£»
3.ÔÚ¶à»úÉÏÔËÐÐËüÃÇ£¬ÑéÖ¤ÆäͨÐŽá¹û£»£¨ChatServerÖ»ÐèÔËÐÐÔÚһ̨Ö÷»úÉÏ£¬ChatClient¿ÉÔÚÆäËüÖ÷»úÉÏÔËÐУ¨ÒªÖªµÀChatServerËùÔÚÖ÷»úµÄIPµØÖ·£©¡£
4£®Ìáʾ£º·þÎñÆ÷¶Ë»ØËÍÏûϢʱ£¬¿ÉÒÔ½øÐмӹ¤£¬ÀýÈç¸øÃ¿¸öÊÕµ½µÄÏûÏ¢¼ÓÉÏ“·þÎñÆ÷»ØËÍ”+ÔʼÏûÏ¢+·þÎñÆ÷¶ËÊÕµ½ÏûÏ¢µÄʱ¼ä£»
5£®¿Í»§¶Ë¿ÉÒÔ´Ó4×Ö½ÚÊý¾Ý¿ªÊ¼·¢ËÍ£¬Öð½¥Ôö´óÊý¾ÝÁ¿£¬¹Û²ì´ÓÉÙÁ¿Êý¾ÝµÄ·¢Ë͵½´óÁ¿Êý¾ÝµÄ·¢ËÍ£¬Ê±¼äÐÔÄܵı仯£¬¼Ç¼ÿ´Î·¢ËÍÊý¾ÝËùÐèʱ¼ä£¬ÀûÓÃexcelÖÆ×÷ÇúÏßͼ£¨¸Ã²¿·ÖʵÑé¿ÉÑ¡£©
Ô´Â룺
·þÎñÆ÷¶Ë£º
package tcpipchapter3;
import java.io.*;
import java.net.*;
import java.text.SimpleDateFormat;
import java.util.Date;
public class server {
/**
* @param args
*/
//ÉèÖö˿ںÅ\
public static int portNo=3333;
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
......
ʵÑéÒªÇó£º
1.±àд»ùÓÚTCPÐÒéµÄͨÐųÌÐò£¬°üÀ¨ServerÓëClientÁ½¸ö²¿·Ö¡£ÊµÏÖ»ØÉù³ÌÐò£º¼´¿Í»§¶Ë·¢ËÍÏûÏ¢£¬·þÎñÆ÷¶Ë½«ÊÕµ½µÄÏûÏ¢ÔÑù»áË͸ø¿Í»§¶Ë¡£
2.ÔÚµ¥»úÉÏÔËÐÐËüÃÇ£¬ÑéÖ¤ÆäͨÐŽá¹û£»
3.ÔÚ¶à»úÉÏÔËÐÐËüÃÇ£¬ÑéÖ¤ÆäͨÐŽá¹û£»£¨ChatServerÖ»ÐèÔËÐÐÔÚһ̨Ö÷»úÉÏ£¬ChatClient¿ÉÔÚÆäËüÖ÷»úÉÏÔËÐУ¨ÒªÖªµÀChatServerËùÔÚÖ÷»úµÄIPµØÖ·£©¡£
4£®Ìáʾ£º·þÎñÆ÷¶Ë»ØËÍÏûϢʱ£¬¿ÉÒÔ½øÐмӹ¤£¬ÀýÈç¸øÃ¿¸öÊÕµ½µÄÏûÏ¢¼ÓÉÏ“·þÎñÆ÷»ØËÍ”+ÔʼÏûÏ¢+·þÎñÆ÷¶ËÊÕµ½ÏûÏ¢µÄʱ¼ä£»
5£®¿Í»§¶Ë¿ÉÒÔ´Ó4×Ö½ÚÊý¾Ý¿ªÊ¼·¢ËÍ£¬Öð½¥Ôö´óÊý¾ÝÁ¿£¬¹Û²ì´ÓÉÙÁ¿Êý¾ÝµÄ·¢Ë͵½´óÁ¿Êý¾ÝµÄ·¢ËÍ£¬Ê±¼äÐÔÄܵı仯£¬¼Ç¼ÿ´Î·¢ËÍÊý¾ÝËùÐèʱ¼ä£¬ÀûÓÃexcelÖÆ×÷ÇúÏßͼ£¨¸Ã²¿·ÖʵÑé¿ÉÑ¡£©
Ô´Â룺
·þÎñÆ÷¶Ë£º
package tcpipchapter3;
import java.io.*;
import java.net.*;
import java.text.SimpleDateFormat;
import java.util.Date;
public class server {
/**
* @param args
*/
//ÉèÖö˿ںÅ\
public static int portNo=3333;
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
......
¼ÙÉè»ùÀàΪA,ÓÐÁ½¸öÊý¾Ý³ÉÔ± , Ò»¸ö·½·¨£¬ÓÃCÃèÊöÈçÏ£º
typedef struct _A
{
int type;
char name[20];
int (*get_type)(struct A *);
}A ;
¼Ì³ÐÀàB,¼Ì³ÐA£¬²¢ÇÒÓÐ×Ô¼ºµÄ³ÉÔ±±äÁ¿£¬ºÍÒ»¸ö·½·¨£¬ÓÃCÃèÊöÈçÏ£º
typedef struct _B
{
A a;
int num;
int (*get_num)(struct _B *);
}B;
ÈçºÎÓÃCÀ´ÊµÏÖÕâÁ½¸öÀàÄØ£¿ÏÂÃæ½éÉÜÁ½ÖÖ·½·¨£º
·½·¨1£¬ÓúêÀ´ÊµÏÖ£º ......
¼ÙÉè»ùÀàΪA,ÓÐÁ½¸öÊý¾Ý³ÉÔ± , Ò»¸ö·½·¨£¬ÓÃCÃèÊöÈçÏ£º
typedef struct _A
{
int type;
char name[20];
int (*get_type)(struct A *);
}A ;
¼Ì³ÐÀàB,¼Ì³ÐA£¬²¢ÇÒÓÐ×Ô¼ºµÄ³ÉÔ±±äÁ¿£¬ºÍÒ»¸ö·½·¨£¬ÓÃCÃèÊöÈçÏ£º
typedef struct _B
{
A a;
int num;
int (*get_num)(struct _B *);
}B;
ÈçºÎÓÃCÀ´ÊµÏÖÕâÁ½¸öÀàÄØ£¿ÏÂÃæ½éÉÜÁ½ÖÖ·½·¨£º
·½·¨1£¬ÓúêÀ´ÊµÏÖ£º ......
#include<stdio.h>
int cubeByValue(int n);
int main(){
int number = 5 ;
printf("The original value of number is %d\n",number);
number = cubeByValue(number);
printf("The new value of number is %d\n",number);
return 0;
}
int cubeByValue(int n){
return n*n ;
}
#include<stdio.h>
void cubeByReference(int *nPtr);
int main(){
int number = 5 ;
printf("The original value of number is %d\n",number);
cubeByReference( &number );
printf("The new value of number is %d\n",number);
return 0;
}
void cubeByReference(int *nPtr){
*nPtr = *nPtr * *nPtr ;
}
......
ÔÚCÖпÉÒÔ¶¨ÒåÈ«¾Ö±äÁ¿£¬È«¾Ö±äÁ¿ÊÇÔÚ³ÌÐò¼ÓÔØ³õʼ»¯Ê±·ÖÅä¿Õ¼ä²¢½øÐгõʼ»¯¡£ÔÚc´úÂëÖж¨Òå/ÉùÃ÷È«¾Ö±äÁ¿µÄ·½Ê½ÈçÏÂ
1. int n;
¶¨Òå»òÕßÉùÃ÷£¨Èç¹ûÔÚÆäËûÎļþÖÐÒѶ¨Ò壩ȫ¾Ö±äÁ¿¡£
2. int n = 10;
¶¨ÒåÈ«¾Ö±äÁ¿²¢³õʼ»¯¡£
3. extern int n;
ÉùÃ÷ÔÚÍⲿ¶¨ÒåµÄÈ«¾Ö±äÁ¿¡£
4. static int n;
¶¨Ò徲̬ȫ¾Ö±äÁ¿
5. static int n = 10;
¶¨ÒåÈ«¾Ö±äÁ¿²¢³õʼ»¯
×¢Ò⣺ͬһ±äÁ¿ÃûÔÚÏàͬ×÷ÓÃÓòÄÚ²»Äܶ¨ÒåÁ½´Î£¬·ñÔòÔÚlinkÊDZ¨´í¡£
ÔÚCÖпÉÒÔÉùÃ÷º¯Êý£¬¸ñʽÈçÏÂ
1. void display();
ÉùÃ÷ÎļþÄÚ²¿»òÕßÎļþÍⲿº¯Êý¡£
2. extern void display();
ÉùÃ÷ÎļþÍⲿº¯Êý¡£
3. static void display();
static¹Ø¼ü×Ö¶Ôº¯ÊýÉùÃ÷ûʲôЧ¹û£¬µÈͬÓÚvoid display();
×¢Ò⣺CÖж¨Ò庯Êýʱ¿ÉÒÔÌí¼Óstatic¹Ø¼ü×Ö£¬Ê¹Æä³ÉΪ¾²Ì¬º¯Êý¡£¾²Ì¬º¯ÊýÖ»¿ÉÔÚµ±Ç°Îļþµ÷Ó᣷´Ö®Ã»ÓÐÌí¼Óstatic¹Ø¼ü×ֵĺ¯ÊýΪ·Ç¾²Ì¬º¯Êý£¬¿ÉÒÔÔÚµ±Ç°ÎļþºÍÆäËûÎļþµ÷Óᣠ......
CÖеĿɱä²ÎÊýÑо¿
Ò»£® ºÎν¿É±ä²ÎÊý
int
printf( const char* format, ...);
ÕâÊÇʹÓùýCÓïÑÔµÄÈËËùÔÙÊìϤ²»¹ýµÄprintfº¯ÊýÔÐÍ£¬ËüµÄ²ÎÊýÖÐ
¾ÍÓй̶¨²ÎÊýformatºÍ¿É±ä²ÎÊý£¨ÓÔ…”±íʾ£©. ¶øÎÒÃÇÓÖ¿ÉÒÔÓø÷ÖÖ·½Ê½À´µ÷ÓÃprintf,Èç:
printf("%d",value);
printf("%s",str);
printf("the number is %d ,string is:%s",
value, str);
¶þ.ʵÏÖÔÀí
C
ÓïÑÔÓúêÀ´´¦ÀíÕâЩ¿É±ä²ÎÊý¡£ÕâЩºê¿´ÆðÀ´ºÜ¸´ÔÓ£¬ÆäʵÔÀíͦ¼òµ¥£¬¾ÍÊǸù¾Ý²ÎÊýÈëÕ»µÄÌØµã´Ó×î¿¿½üµÚÒ»¸ö¿É±ä²ÎÊýµÄ¹Ì¶¨²ÎÊý¿ªÊ¼£¬ÒÀ´Î»ñȡÿ¸ö¿É±ä²ÎÊý
µÄµØÖ·¡£ÏÂÃæÎÒÃÇÀ´·ÖÎöÕâЩºê¡£ÔÚVCÖеÄstdarg.hÍ·ÎļþÖУ¬Õë¶Ô²»Í¬Æ½Ì¨Óв»Í¬µÄºê¶¨Ò壬ÎÒÃÇѡȡX86ƽ̨ϵĺ궨Ò壺
typedef
char *va_list;
/*°Ñva_list±»¶¨Òå³Échar*£¬ÕâÊÇÒòΪÔÚÎÒÃÇĿǰËùÓõÄPC»úÉÏ£¬×Ö·ûÖ¸ÕëÀàÐÍ¿ÉÒÔÓÃÀ´´æ´¢ÄÚ´æµ¥
ÔªµØÖ·¡£¶øÔÚÓеĻúÆ÷ÉÏva_listÊDZ»¶¨Òå³Évoid*µÄ*/
#define _INTSIZEOF(n) ( (sizeof(n) +
sizeof(int) - 1) & ~(sizeof(int) - 1) )
/*_INTSIZEOF(n)ºêÊÇΪÁË¿¼ÂÇÄÇЩÄÚ´æ
µØÖ·ÐèÒª¶ÔÆëµÄϵͳ£¬´ÓºêµÄÃû×ÖÀ´Ó¦¸ÃÊǸúsizeof(int)¶ÔÆë¡£Ò»°ãµÄ ......
ÔÎĵØÖ·£ºhttp://blog.csdn.net/yc0188/archive/2005/02/26/303190.aspx
ÔÚCÓïÑÔÖУ¬½á¹¹ÊÇÒ»ÖÖ¸´ºÏÊý¾ÝÀàÐÍ£¬Æä¹¹³ÉÔªËØ¼È¿ÉÒÔÊÇ»ù±¾Êý¾ÝÀàÐÍ£¨Èçint¡¢long¡¢floatµÈ£©µÄ±äÁ¿£¬Ò²¿ÉÒÔÊÇһЩ¸´ºÏÊý¾ÝÀàÐÍ£¨ÈçÊý×é¡¢½á¹¹¡¢ÁªºÏµÈ£©µÄÊý¾Ýµ¥Ôª¡£ÔڽṹÖУ¬±àÒëÆ÷Ϊ½á¹¹µÄÿ¸ö³ÉÔ±°´Æä×ÔÈ»¶Ô½ç£¨alignment£©Ìõ¼þ·ÖÅä¿Õ¼ä¡£¸÷¸ö³ÉÔ±°´ÕÕËüÃDZ»ÉùÃ÷µÄ˳ÐòÔÚÄÚ´æÖÐ˳Ðò´æ´¢£¬µÚÒ»¸ö³ÉÔ±µÄµØÖ·ºÍÕû¸ö½á¹¹µÄµØÖ·Ïàͬ¡£
ÀýÈ磬ÏÂÃæµÄ½á¹¹¸÷³ÉÔ±¿Õ¼ä·ÖÅäÇé¿ö£º
struct test
{
char x1;
short x2;
float x3;
char x4;
};
½á¹¹µÄµÚÒ»¸ö³ÉÔ±x1£¬ÆäÆ«ÒÆµØÖ·Îª0£¬Õ¼¾ÝÁ˵Ú1¸ö×Ö½Ú¡£µÚ¶þ¸ö³ÉÔ±x2ΪshortÀàÐÍ£¬ÆäÆðʼµØÖ·±ØÐë2×ֽڶԽ磬Òò´Ë£¬±àÒëÆ÷ÔÚx2ºÍx1Ö®¼äÌî³äÁËÒ»¸ö¿Õ×Ö½Ú¡£½á¹¹µÄµÚÈý¸ö³ÉÔ±x3ºÍµÚËĸö³ÉÔ±x4Ç¡ºÃÂäÔÚÆä×ÔÈ»¶Ô½çµØÖ·ÉÏ£¬ÔÚËüÃÇÇ°Ãæ²»ÐèÒª¶îÍâµÄÌî³ä×Ö½Ú¡£ÔÚtest½á¹¹ÖУ¬³ÉÔ±x3ÒªÇó4×ֽڶԽ磬ÊǸýṹËùÓгÉÔ±ÖÐÒªÇóµÄ×î´ó¶Ô½çµ¥Ôª£¬Òò¶øtest½á¹¹µÄ×ÔÈ»¶Ô½çÌõ¼þΪ4×Ö½Ú£¬±àÒëÆ÷ÔÚ³ÉÔ±x4ºóÃæÌî³äÁË3¸ö¿Õ×Ö½Ú¡£Õû¸ö½á¹¹ËùÕ¼¾Ý¿Õ¼äΪ12×Ö½Ú¡£¸ü¸ÄC±àÒëÆ ......