ÓÐÈçϳÌÐò£º
//-----------------
class A
{
public:
A()
{
printf( "base A\r\n" );
}
virtual ~A()
{
printf( "base ~A\r\n" );
}
public:
virtual void VirtualFunc()
{
printf( "base VirtualFunc\r\n" );
};
void Func()
{
printf( "base Func\r\n" );
}
void F1()
{
printf( "base F1\r\n" );
}
protected:
private:
};
class B : public A
{
public:
B()
{
printf( "derive B\r\n" );
}
~B()
{
printf( "derive ~B\r\n" );
}
public:
virtual void VirtualFunc()
{
printf( "derive VirtualFunc\r\n" );
};
void Func()
{
printf( "derive Func\r\n" );
}
void G1()
{
printf( "derive G1\r\n" );
}
protected:
private:
};
ÔÚÕâÁ½¸öÀàÖУ¬×ÓÀàB ÖØдÁË »ùÀàµÄ Á½¸öº¯Êý£¬Ò»¸öÊÇÐ麯Êý£¬Ò»¸ö²»ÊÇÐ麯Êý¡£
1. Èç¹ûmainº¯ÊýÈçÏ£º
int main(int argc, int* argv[])
{
A* pA = new B; //»ùÀàÖ¸ÕëÖ¸Ïò×ÓÀà¶ÔÏó
pA->VirtualFunc();
pA->Func();
//pA->G1(); //³ö´í£º'G1' : is not a member of 'A'
delete( pA );
system("pause"); ......
ÓÐÈçϳÌÐò£º
//-----------------
class A
{
public:
A()
{
printf( "base A\r\n" );
}
virtual ~A()
{
printf( "base ~A\r\n" );
}
public:
virtual void VirtualFunc()
{
printf( "base VirtualFunc\r\n" );
};
void Func()
{
printf( "base Func\r\n" );
}
void F1()
{
printf( "base F1\r\n" );
}
protected:
private:
};
class B : public A
{
public:
B()
{
printf( "derive B\r\n" );
}
~B()
{
printf( "derive ~B\r\n" );
}
public:
virtual void VirtualFunc()
{
printf( "derive VirtualFunc\r\n" );
};
void Func()
{
printf( "derive Func\r\n" );
}
void G1()
{
printf( "derive G1\r\n" );
}
protected:
private:
};
ÔÚÕâÁ½¸öÀàÖУ¬×ÓÀàB ÖØдÁË »ùÀàµÄ Á½¸öº¯Êý£¬Ò»¸öÊÇÐ麯Êý£¬Ò»¸ö²»ÊÇÐ麯Êý¡£
1. Èç¹ûmainº¯ÊýÈçÏ£º
int main(int argc, int* argv[])
{
A* pA = new B; //»ùÀàÖ¸ÕëÖ¸Ïò×ÓÀà¶ÔÏó
pA->VirtualFunc();
pA->Func();
//pA->G1(); //³ö´í£º'G1' : is not a member of 'A'
delete( pA );
system("pause"); ......
½ø³ÌI/Oº¯Êý,Óëpcloseº¯ÊýÒ»ÆðʹÓá£
±íÍ·Îļþ
¡¡¡¡#include <stdio.h>
º¯Êý¶¨Òå
¡¡¡¡FILE * popen
( const char * command
, const char * type
);
¡¡¡¡int pclose
( FILE * stream
);
º¯Êý˵Ã÷
¡¡¡¡
popen() º¯Êýͨ¹ý´´½¨Ò»¸ö¹ÜµÀ£¬µ÷Óà fork ²úÉúÒ»¸ö×Ó½ø³Ì£¬Ö´ÐÐÒ»¸ö shell ÒÔÔËÐÐÃüÁîÀ´¿ªÆôÒ»¸ö½ø³Ì¡£Õâ¸ö½ø³Ì±ØÐëÓÉ
pclose() º¯Êý¹Ø±Õ£¬¶ø²»ÊÇ fclose() º¯Êý¡£pclose() º¯Êý¹Ø±Õ±ê×¼ I/O Á÷£¬µÈ´ýÃüÁîÖ´ÐнáÊø£¬È»ºó·µ»Ø shell
µÄÖÕֹ״̬¡£Èç¹û shell ²»Äܱ»Ö´ÐУ¬Ôò pclose() ·µ»ØµÄÖÕֹ״̬Óë shell ÒÑÖ´ÐÐ exit Ò»Ñù¡£
¡¡¡¡ type
²ÎÊýÖ»ÄÜÊǶÁ»òÕßдÖеÄÒ»ÖÖ£¬µÃµ½µÄ·µ»ØÖµ£¨±ê×¼ I/O Á÷£©Ò²¾ßÓÐºÍ type ÏàÓ¦µÄÖ»¶Á»òֻдÀàÐÍ¡£Èç¹û type ÊÇ "r" ÔòÎļþÖ¸ÕëÁ¬½Óµ½ command µÄ±ê×¼Êä³ö£»Èç¹û type ÊÇ "w" ÔòÎļþÖ¸ÕëÁ¬½Óµ½ command µÄ±ê×¼ÊäÈë¡£
¡¡¡¡ command
²ÎÊýÊÇÒ»¸öÖ¸ÏòÒÔ NULL ½áÊøµÄ shell ÃüÁî×Ö·û´®µÄÖ¸Õë¡£ÕâÐÐÃüÁ±»´«µ½ bin/sh ²¢Ê¹ÓÃ-c ±êÖ¾£¬shell ½«Ö´ÐÐÕâ¸öÃüÁî¡£
¡¡¡¡ popen
µÄ·µ»ØÖµÊǸö±ê×¼ I/O Á÷£¬±ØÐëÓÉ pclose
À´ÖÕÖ¹¡£Ç°ÃæÌáµ½Õâ¸öÁ÷Êǵ¥ÏòµÄ¡£ËùÒÔÏòÕâ¸öÁ÷дÄÚÈÝÏ൱ÓÚдÈë¸Ãà ......
½ø³ÌI/Oº¯Êý,Óëpcloseº¯ÊýÒ»ÆðʹÓá£
±íÍ·Îļþ
¡¡¡¡#include <stdio.h>
º¯Êý¶¨Òå
¡¡¡¡FILE * popen
( const char * command
, const char * type
);
¡¡¡¡int pclose
( FILE * stream
);
º¯Êý˵Ã÷
¡¡¡¡
popen() º¯Êýͨ¹ý´´½¨Ò»¸ö¹ÜµÀ£¬µ÷Óà fork ²úÉúÒ»¸ö×Ó½ø³Ì£¬Ö´ÐÐÒ»¸ö shell ÒÔÔËÐÐÃüÁîÀ´¿ªÆôÒ»¸ö½ø³Ì¡£Õâ¸ö½ø³Ì±ØÐëÓÉ
pclose() º¯Êý¹Ø±Õ£¬¶ø²»ÊÇ fclose() º¯Êý¡£pclose() º¯Êý¹Ø±Õ±ê×¼ I/O Á÷£¬µÈ´ýÃüÁîÖ´ÐнáÊø£¬È»ºó·µ»Ø shell
µÄÖÕֹ״̬¡£Èç¹û shell ²»Äܱ»Ö´ÐУ¬Ôò pclose() ·µ»ØµÄÖÕֹ״̬Óë shell ÒÑÖ´ÐÐ exit Ò»Ñù¡£
¡¡¡¡ type
²ÎÊýÖ»ÄÜÊǶÁ»òÕßдÖеÄÒ»ÖÖ£¬µÃµ½µÄ·µ»ØÖµ£¨±ê×¼ I/O Á÷£©Ò²¾ßÓÐºÍ type ÏàÓ¦µÄÖ»¶Á»òֻдÀàÐÍ¡£Èç¹û type ÊÇ "r" ÔòÎļþÖ¸ÕëÁ¬½Óµ½ command µÄ±ê×¼Êä³ö£»Èç¹û type ÊÇ "w" ÔòÎļþÖ¸ÕëÁ¬½Óµ½ command µÄ±ê×¼ÊäÈë¡£
¡¡¡¡ command
²ÎÊýÊÇÒ»¸öÖ¸ÏòÒÔ NULL ½áÊøµÄ shell ÃüÁî×Ö·û´®µÄÖ¸Õë¡£ÕâÐÐÃüÁ±»´«µ½ bin/sh ²¢Ê¹ÓÃ-c ±êÖ¾£¬shell ½«Ö´ÐÐÕâ¸öÃüÁî¡£
¡¡¡¡ popen
µÄ·µ»ØÖµÊǸö±ê×¼ I/O Á÷£¬±ØÐëÓÉ pclose
À´ÖÕÖ¹¡£Ç°ÃæÌáµ½Õâ¸öÁ÷Êǵ¥ÏòµÄ¡£ËùÒÔÏòÕâ¸öÁ÷дÄÚÈÝÏ൱ÓÚдÈë¸Ãà ......
void StraightSelectionSort(int array[], unsigned int n)
{
/*
×¢£º¹Ø¼ü×ÖÖµÀàÐÍΪint£¬Êý×éµÄË÷ÒýÊÇ´Ó0¿ªÊ¼
1. ³õʼ״̬ÎÞÐòÇøΪarray¡¾0£¬ n - 1¡¿£¬ÓÐÐòÇøΪ¿Õ¡£
2. µÚ1ÌËÅÅÐò´Óarray¡¾0£¬ n - 1¡¿ÖÐÕÒµ½Ï±êΪkµÄ¹Ø¼ü×Ö×îСֵ£¬°Ñarray¡¾k¡¿ºÍ
array¡¾0¡¿½»»»¡£ÏÖÔÚÎÞÐòÇøΪarray¡¾1£¬ n - 1¡¿£¬ ÓÐÐòÇøΪarray¡¾0£¬ 0¡¿¡£
µÚ2ÌËÅÅÐò...
µÚ3ÌËÅÅÐò...
...
3. µÚiÌËÅÅÐò£¨1 <= i <= n - 1£©,´Óarray¡¾i£¬ n - 1¡¿ÖÐÕÒµ½Ï±êΪjµÄ¹Ø¼ü×Ö×îСֵ£¬°Ñ
array¡¾j¡¿ºÍarray¡¾i - 1¡¿½»»»£¬Èç¹ûi == n - 1£¬ÔòÅÅÐò½áÊø£¬·ñÔò¼ÌÐø3²½Öè¡£
*/
/* ×ܹ²ÐèÒªn - 1´ÎÅÅÐò£¬´Ó1µ½n - 1 */
for (int i = 1; i <= n - 1; i++)
{
/* kÖµ´Ó0µ½n - 2£¬ ×îºóÒ»¸ö¼Ç¼¹Ø¼ü×ÖÖµ±Ø¶¨ÊÇ×î´óµÄ */
int k = i - 1;
int swap = 0;
/* Õâ¸öforÑ»·ÕÒµ½µÚiÌËÅÅÐòÖÐÎÞÐòÇø¹Ø¼ü×ÖÖµ×îС¼Ç¼µÄϱê */
for (int j = i; j < n; j++)
{
if (array[j] < array[k])
{
k = j;
}
}
/* Èç¹ûÊý×éÖнô½ÓÓÐÐòÇøµÄÎÞÐòÇøµÄµÚÒ»¸ö¼Ç¼¾ÍÊÇÎÞÐòÇøÖйؼü×ÖÖµ×îСµÄ£¬Ôò²»Óý»»» */
if (k != (i - 1))
{
swap = ar ......
[×¢]£º×î½üÔÚ×öUVCÃèÊö·ûµÄ±à¼¹¤¾ß£¬Óõ½ºÜ¶àµÄ½á¹¹£¬ÎªÁË·½±ã°Ñ½á¹¹Ìåд³ÉbinÎļþ£¬ÐèÒª°Ñ½á¹¹ÌåÖÐÌî³äµÄ×Ö½ÚÈ¥µô£¬ÔÚÍøÉÏËÑË÷µÃµ½ÕâƪÎÄÕ£¬¸Ð¾õͦºÃµÄ£¬×ª¹ýÀ´×ö¸ö¼ÍÄî¡£
½á¹¹Ìå(struct)µÄsizeofÖµ£¬²¢²»ÊǼòµ¥µÄ½«ÆäÖи÷ÔªËØËùÕ¼×Ö½ÚÏà¼Ó£¬¶øÊÇÒª¿¼Âǵ½´æ´¢¿Õ¼äµÄ×Ö½Ú¶ÔÆëÎÊÌâ¡£ÏÈ¿´ÏÂÃ涨ÒåµÄÁ½¸ö½á¹¹Ìå.
struct
{
char a;
short b;
char c;
}S1;
struct
{
char a;
char b;
short c;
}S2;
·Ö±ðÓóÌÐò²âÊԵóösizeof(S1)=6 , sizeof(S2)=4
¿É¼û£¬ËäÈ»Á½¸ö½á¹¹ÌåËùº¬µÄÔªËØÏàͬ£¬µ«ÒòΪÆäÖдæ·ÅµÄÔªËØÀàÐÍ˳Ðò²»Ò»Ñù£¬ËùÕ¼×Ö½ÚÒ²³öÏÖ²îÒì¡£Õâ¾ÍÊÇ×Ö½Ú¶ÔÆëÔÒò¡£Í¨¹ý×Ö½Ú¶ÔÆ룬ÓÐÖúÓÚ¼Ó¿ì¼ÆËã»úµÄÈ¡ÊýËٶȣ¬·ñÔò¾ÍµÃ¶à»¨Ö¸ÁîÖÜÆÚ¡£
×Ö½Ú¶ÔÆëÔÔò
½á¹¹ÌåĬÈϵÄ×Ö½Ú¶ÔÆëÒ»°ãÂú×ãÈý¸ö×¼Ôò£º
1) ½á¹¹Ìå±äÁ¿µÄÊ×µØÖ·Äܹ»±»Æä×î¿í»ù±¾ÀàÐͳÉÔ±µÄ´óСËùÕû³ý£»
2) ½á¹¹Ìåÿ¸ö³ÉÔ±Ïà¶ÔÓڽṹÌåÊ×µØÖ·µÄÆ«ÒÆÁ¿£¨offset£©¶¼ÊdzÉÔ±×ÔÉí´óСµÄÕûÊý±¶£¬ÈçÓÐÐèÒª±àÒëÆ÷»áÔÚ³ÉÔ±Ö®¼ä¼ÓÉÏÌî³ä×Ö½Ú£¨internal adding£©£»
3) ½á¹¹ÌåµÄ×Ü´óСΪ½á¹¹ ......
[×¢]£º×î½üÔÚ×öUVCÃèÊö·ûµÄ±à¼¹¤¾ß£¬Óõ½ºÜ¶àµÄ½á¹¹£¬ÎªÁË·½±ã°Ñ½á¹¹Ìåд³ÉbinÎļþ£¬ÐèÒª°Ñ½á¹¹ÌåÖÐÌî³äµÄ×Ö½ÚÈ¥µô£¬ÔÚÍøÉÏËÑË÷µÃµ½ÕâƪÎÄÕ£¬¸Ð¾õͦºÃµÄ£¬×ª¹ýÀ´×ö¸ö¼ÍÄî¡£
½á¹¹Ìå(struct)µÄsizeofÖµ£¬²¢²»ÊǼòµ¥µÄ½«ÆäÖи÷ÔªËØËùÕ¼×Ö½ÚÏà¼Ó£¬¶øÊÇÒª¿¼Âǵ½´æ´¢¿Õ¼äµÄ×Ö½Ú¶ÔÆëÎÊÌâ¡£ÏÈ¿´ÏÂÃ涨ÒåµÄÁ½¸ö½á¹¹Ìå.
struct
{
char a;
short b;
char c;
}S1;
struct
{
char a;
char b;
short c;
}S2;
·Ö±ðÓóÌÐò²âÊԵóösizeof(S1)=6 , sizeof(S2)=4
¿É¼û£¬ËäÈ»Á½¸ö½á¹¹ÌåËùº¬µÄÔªËØÏàͬ£¬µ«ÒòΪÆäÖдæ·ÅµÄÔªËØÀàÐÍ˳Ðò²»Ò»Ñù£¬ËùÕ¼×Ö½ÚÒ²³öÏÖ²îÒì¡£Õâ¾ÍÊÇ×Ö½Ú¶ÔÆëÔÒò¡£Í¨¹ý×Ö½Ú¶ÔÆ룬ÓÐÖúÓÚ¼Ó¿ì¼ÆËã»úµÄÈ¡ÊýËٶȣ¬·ñÔò¾ÍµÃ¶à»¨Ö¸ÁîÖÜÆÚ¡£
×Ö½Ú¶ÔÆëÔÔò
½á¹¹ÌåĬÈϵÄ×Ö½Ú¶ÔÆëÒ»°ãÂú×ãÈý¸ö×¼Ôò£º
1) ½á¹¹Ìå±äÁ¿µÄÊ×µØÖ·Äܹ»±»Æä×î¿í»ù±¾ÀàÐͳÉÔ±µÄ´óСËùÕû³ý£»
2) ½á¹¹Ìåÿ¸ö³ÉÔ±Ïà¶ÔÓڽṹÌåÊ×µØÖ·µÄÆ«ÒÆÁ¿£¨offset£©¶¼ÊdzÉÔ±×ÔÉí´óСµÄÕûÊý±¶£¬ÈçÓÐÐèÒª±àÒëÆ÷»áÔÚ³ÉÔ±Ö®¼ä¼ÓÉÏÌî³ä×Ö½Ú£¨internal adding£©£»
3) ½á¹¹ÌåµÄ×Ü´óСΪ½á¹¹ ......
ͨ¹ý°ÑºÄʱ³¤µÄº¯ÊýÓÃcÓïÑÔʵÏÖ£¬²¢±àÒë³Émexº¯Êý¿ÉÒÔ¼Ó¿ìÖ´ÐÐËٶȡ£Matlab±¾ÉíÊDz»´øcÓïÑԵıàÒëÆ÷µÄ£¬ËùÒÔÒªÇóÄãµÄ»úÆ÷ÉÏÒѾ°²×°ÓÐVC,BC»òWatcom CÖеÄÒ»ÖÖ¡£Èç¹ûÄãÔÚ°²×°MatlabʱÒѾÉèÖùý±àÒëÆ÷£¬ÄÇôÏÖÔÚÄãÓ¦¸Ã¾Í¿ÉÒÔʹÓÃmexÃüÁîÀ´±àÒëcÓïÑԵijÌÐòÁË¡£Èç¹ûµ±Ê±Ã»ÓÐÑ¡£¬¾ÍÔÚMatlabÀï¼üÈëmex -setup£¬ÏÂÃæÖ»Òª¸ù¾ÝÌáʾһ²½²½ÉèÖþͿÉÒÔÁË¡£ÐèҪעÒâµÄÊÇ£¬½ÏµÍ°æ±¾µÄÔÚÉèÖñàÒëÆ÷·¾¶Ê±£¬Ö»ÄÜʹÓ÷¾¶Ãû³ÆµÄ8×Ö·ûÐÎʽ¡£±ÈÈçÎÒÓõÄVC×°ÔÚ·¾¶C:\PROGRAM FILES\DEVSTUDIOÏ£¬ÄÇÔÚÉèÖ÷¾¶Ê±¾ÍҪд³É£º“C:\PROGRA~1”ÕâÑùÉèÖÃÍêÖ®ºó£¬mex¾Í¿ÉÒÔÖ´ÐÐÁË¡£ÎªÁ˲âÊÔÄãµÄ·¾¶ÉèÖÃÕýÈ·Óë·ñ£¬°ÑÏÂÃæµÄ³ÌÐò´æΪhello.c¡£
/*hello.c*/
#include "mex.h"
void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
{ mexPrintf("hello,world!\n");
}
¼ÙÉèÄã°Ñhello.c·ÅÔÚÁËC:\TEST\Ï£¬ÔÚMatlabÀïÓÃCD C:\TEST\ ½«µ±Ç°Ä¿Â¼¸ÄΪC:\ TEST\£¨×¢Ò⣬½ö½«C:\TEST\¼ÓÈëËÑË÷·¾¶ÊÇûÓÐÓõģ©¡£ÏÖÔÚÇãº
mex hello.c
Èç¹ûÒ»ÇÐ˳Àû£¬±àÒëÓ¦¸ÃÔÚ³öÏÖ±àÒëÆ÷ÌáʾÐÅÏ¢ºóÕý³£Í˳ö¡£Èç¹ûÄãÒѽ«C:\TEST\¼Ó
ÈëÁËËÑË÷·¾¶£¬ÏÖÔÚ¼üÈëhello£¬³ÌÐò»áÔÚÆÁÄ»ÉÏ´ ......
ͨ¹ý°ÑºÄʱ³¤µÄº¯ÊýÓÃcÓïÑÔʵÏÖ£¬²¢±àÒë³Émexº¯Êý¿ÉÒÔ¼Ó¿ìÖ´ÐÐËٶȡ£Matlab±¾ÉíÊDz»´øcÓïÑԵıàÒëÆ÷µÄ£¬ËùÒÔÒªÇóÄãµÄ»úÆ÷ÉÏÒѾ°²×°ÓÐVC,BC»òWatcom CÖеÄÒ»ÖÖ¡£Èç¹ûÄãÔÚ°²×°MatlabʱÒѾÉèÖùý±àÒëÆ÷£¬ÄÇôÏÖÔÚÄãÓ¦¸Ã¾Í¿ÉÒÔʹÓÃmexÃüÁîÀ´±àÒëcÓïÑԵijÌÐòÁË¡£Èç¹ûµ±Ê±Ã»ÓÐÑ¡£¬¾ÍÔÚMatlabÀï¼üÈëmex -setup£¬ÏÂÃæÖ»Òª¸ù¾ÝÌáʾһ²½²½ÉèÖþͿÉÒÔÁË¡£ÐèҪעÒâµÄÊÇ£¬½ÏµÍ°æ±¾µÄÔÚÉèÖñàÒëÆ÷·¾¶Ê±£¬Ö»ÄÜʹÓ÷¾¶Ãû³ÆµÄ8×Ö·ûÐÎʽ¡£±ÈÈçÎÒÓõÄVC×°ÔÚ·¾¶C:\PROGRAM FILES\DEVSTUDIOÏ£¬ÄÇÔÚÉèÖ÷¾¶Ê±¾ÍҪд³É£º“C:\PROGRA~1”ÕâÑùÉèÖÃÍêÖ®ºó£¬mex¾Í¿ÉÒÔÖ´ÐÐÁË¡£ÎªÁ˲âÊÔÄãµÄ·¾¶ÉèÖÃÕýÈ·Óë·ñ£¬°ÑÏÂÃæµÄ³ÌÐò´æΪhello.c¡£
/*hello.c*/
#include "mex.h"
void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
{ mexPrintf("hello,world!\n");
}
¼ÙÉèÄã°Ñhello.c·ÅÔÚÁËC:\TEST\Ï£¬ÔÚMatlabÀïÓÃCD C:\TEST\ ½«µ±Ç°Ä¿Â¼¸ÄΪC:\ TEST\£¨×¢Ò⣬½ö½«C:\TEST\¼ÓÈëËÑË÷·¾¶ÊÇûÓÐÓõģ©¡£ÏÖÔÚÇãº
mex hello.c
Èç¹ûÒ»ÇÐ˳Àû£¬±àÒëÓ¦¸ÃÔÚ³öÏÖ±àÒëÆ÷ÌáʾÐÅÏ¢ºóÕý³£Í˳ö¡£Èç¹ûÄãÒѽ«C:\TEST\¼Ó
ÈëÁËËÑË÷·¾¶£¬ÏÖÔÚ¼üÈëhello£¬³ÌÐò»áÔÚÆÁÄ»ÉÏ´ ......
ÔÚLinuxÏÂд³ÌÐò£¬Óöµ½Ò»¸öº¯Êý²»ÖªµÀÔõôÓþ͵ÃÉÏÍøÈ¥²é£¬Ã»ÓÐÀàËÆMSDNÖ®ÀàµÄÈí¼þ£¬·³µÃºÜ¡£¿´µ½ÍøÉϺܶàÈ˶¼ËµÓÃmanºÜ·½±ã£¬Ö»ÒªmanÒ»ÏÂÄãÏëÁ˽âµÄº¯Êý¾ÍÐÐÁË£¬¿ÉÎÒÔÚmanÖ®ºóʲô¶¼µÃ²»µ½£¬±ÈÈç man printf£¬½á¹û¾ÍÊÇûÓÐÈë¿Ú
½ñÌìרÃÅÉÏÍøËÑÁËÏ£¬·¢ÏÖÔÀ´ÊÇÒòΪUbuntuĬÈÏûÓÐ×°manpages-dev£¬¶øº¯Êý¶¼ÔÚÕâ¸ö°üÀ°ÑÕâ¸ö°²×°ÉÏ£¬¹ûÈ»¾ÍÄÜÓÃmanÀ´²éº¯ÊýÁË¡£
»¹ÓÐÒ»¸ömanpages-zh£¬ÊÇÖÐÎĵİïÖú£¬°ÑÕâ¸ö°²×°°ü×°ÉÏ£¬ÔÙ¸ÄЩÅäÖþÍÄÜ¿´µ½ÖÐÎĵİïÖúÁË¡£
Ê×ÏÈ£¬±àÂëÒª¸ÄΪutf8µÄ£¬ÓÖÊÇÕâ¸ÃËÀµÄ±àÂëÎÊÌâ……ÓÃÏÂÃæÕâ¸ö½Å±¾£¬Ëæ±ã´æ³É¸ö.shÎļþ£¬±ÈÈ磺chman.sh£¬È»ºóÔÚµ±Ç°Ä¿Â¼ÏÂÖ´ÐÐ sudo sh ./chman.sh
#!/bin/bash
for k in /usr/share/man/zh_CN/*/*.gz; do
echo $k
j=`echo $k | sed “s/\.gz$//”`
gunzip $k
iconv -f gb18030 -t utf8 $j > tmp
mv tmp $j
gzip $j
done
Õâʱ¾Í¿ÉÒÔÓÃ
man -M /usr/share/man/zh_CN printf
À´²é¿´printfµÄÖÐÎÄ°ïÖúÁË¡£
ÿ´Î¶¼ÊäÈëÕâô³¤µÄÃüÁîʵÔÚÊÇÌ«·³ÁË£¬ÍøÉÏÓÐÁ½ÖÖ·½·¨
1. alias cman=’man -M /usr/share/man/zh_CN’
ÖØÃüÃûһϣ¬ÔÚÕâ¸öÖÕ¶ËÖоÍÄÜÓÃcma ......