¡ô¾µäCÔ´³ÌÐò100Àý:http://post.baidu.com/f?kz=8618367
¡ôʱÖÓµÄפÁô³ÌÐò:http://post.baidu.com/f?kz=10822377
¡ôÊý¾Ý½á¹¹ôßÈô¸É¾µäÎÊÌâºÍËã·¨:http://post.baidu.com/f?kz=10922856
¡ôLIUXUY ´ÅÅÌϵͳԴ³ÌÐò:http://post.baidu.com/f?kz=12973347
¡ôRLEѹËõ:http://post.baidu.com/f?kz=12592570
¡ô¿ìËÙÅÅÐò:http://post.baidu.com/f?kz=12262349
¡ôÈ«ÅÅÁеĵݹéËã·¨:http://post.baidu.com/f?kz=12248706
¡ôKMP×Ö·û´®ËÑË÷Ëã·¨:http://post.baidu.com/f?kz=12143581
¡ôC¸ßЧ±à³ÌËÄÕÐ:http://post.baidu.com/f?kz=13192245
¡ôÎÞÕ»·ÇµÝ¹é¶þ²æÊ÷±éÀú:http://post.baidu.com/f?kz=12394188
¡ô¸úÎÒѧNETBSDÄÚºËÔ´Âë:http://post.baidu.com/f?kz=12201581
¡ôLinuxÔ´Âë:http://post.baidu.com/f?kz=12692827
¡ôCÓïÑÔÖв»¶¨²ÎÊýµÄʵÏÖhttp://post.baidu.com/f?kz=19232306
¡ôÒ»¸öÓÐ¹Ø FreeBSD µÄÍøÕ¾:http://post.baidu.com/f?kz=14828500
¡ôc51ϵÁзÂÕæÆ÷:http://post.baidu.com/f?kz=14332652
¡ôbrainf*ck ÓïÑԵĽâÊÍÆ÷http://post.baidu.com/f?kz=15998145
¡ôÔõÑùÓÃcдÓÎÏ·£ºhttp://post.baidu.com/f?kz=5417859
¡ô±¾°ÉÓÎÏ·±à³ÌÏà¹Ø:http:// ......
½áÂÛ£º
char cmd[128];
...
int status = system(cmd);
printf("%d == system(\"%s\");\n", WEXITSTATUS(status), cmd); //´òÓ¡·µ»ØÖµ
ÍøÉÏËѵ½µÄ´ð°¸Óë½âÊÍ(1)£º
http://www.lslnet.com/linux/dosc1/38/linux-280268.htm
ÈçºÎÔÚunix c³ÌÐòÖеõ½systemµ÷Óõķµ»ØÖµ,ÇëÖ¸½Ì
¶Ô system µÄ·µ»ØÖµÊ©¼Ó WEXITSTATUS ºê¡£½á¹û¾ÍÊÇ¡£
ÈçºÎÔÚunix c³ÌÐòÖеõ½systemµ÷Óõķµ»ØÖµ,ÇëÖ¸½Ì
¿´¿´ÕâÌõFAQ:
1.10 systemº¯Êý£¬pcloseº¯Êý£¬waitpidº¯Êý µÄ·µ»ØÖµÊÇʲô£¿
==========================================================
‘system()’£¬‘pclose()’»òÕß‘waitpid()’µÄ·µ»ØÖµ²»ÏóÊÇÎÒ½ø³ÌµÄÍ˳öÖµ(exit
value)(ÒëÕß×¢£ºÍ˳öÖµÖ¸µ÷ÓÃexit() »ò_exit()ʱ¸øµÄ²ÎÊý)... »òÕßÍ˳öÖµ×óÒÆÁË8
λ...ÕâÊÇÔõô¸ãµÄ£¿
ÊÖ²áÒ³ÊǶԵģ¬ÄãÒ²ÊǶԵÄ! Èç¹û²éÔÄÊÖ²áÒ³µÄ‘waitpid()’Äã»á·¢ÏÖ½ø³ÌµÄ·µ»Ø
Öµ±»±àÂëÁË¡£Õý³£Çé¿öÏ£¬½ø³ÌµÄ·µ»ØÖµÔÚ¸ß16룬¶øÓàϵÄλÓÃÀ´×÷ÆäËüÊ¡£
Èç¹ûÄãÏ£Íû¿ÉÒÆÖ²£¬Äã¾ ......
ÈôÏëÔÚubuntuϱàÒëc/c++´úÂë
Ê×ÏÈ£¬°²×°g++ºÍgdb£¬¿ÉÒÔÔÚÐÂÁ¢µÃÖÐÖ±½Ó°²×°
ÈôÒª±àÒëc£¬È磺
££include
<stdio.h>
int main()
{
printf("Hello,World!\n");
return 0;
}
ÏÖÔÚ´æÅÌΪHello.c
£¬´ò¿ªÄãµÄÖÕ¶Ë£¬²¢ÔÚÎļþµ±Ç°Ä¿Â¼ÊäÈ룺
gcc Hello.c -o
hello
./hello
ÈôÒª±àÒëc++
#include
<iostream>
using namespace std;
int main()
{
cout<<"Hello,World!\n"<<endl;
return 0;
}
´æÅÌΪHello.cpp
g++ Hello.cpp
-o hello
./hello
¶øÆäÖеÄ-o Ó¦¸Ã¾ÍÊÇÊä³öÒ»¸ö¿ÉÖ´ÐеÄÎļþ
±àÒë¶à¸öÎļþÎÒÃÇÔõô°ì£¿£¿£¿
À´¿´ÏÂÃæ³öÁËÈý¸öÎļþHello.h,
Hello.cpp, MyFirst.cpp
ÔÚg++
ÖÐÓÐÒ»¸ö²ÎÊý-c
¿ÉÒÔÖ»±àÒë²»Á¬½Ó£¬ÄÇôÎÒÃǾͿÉÒÔ°´ÈçÏÂ˳Ðò±àÒëÎļþ£¬
g++ -c
Hello.cpp - ......
ÈôÏëÔÚubuntuϱàÒëc/c++´úÂë
Ê×ÏÈ£¬°²×°g++ºÍgdb£¬¿ÉÒÔÔÚÐÂÁ¢µÃÖÐÖ±½Ó°²×°
ÈôÒª±àÒëc£¬È磺
££include
<stdio.h>
int main()
{
printf("Hello,World!\n");
return 0;
}
ÏÖÔÚ´æÅÌΪHello.c
£¬´ò¿ªÄãµÄÖÕ¶Ë£¬²¢ÔÚÎļþµ±Ç°Ä¿Â¼ÊäÈ룺
gcc Hello.c -o
hello
./hello
ÈôÒª±àÒëc++
#include
<iostream>
using namespace std;
int main()
{
cout<<"Hello,World!\n"<<endl;
return 0;
}
´æÅÌΪHello.cpp
g++ Hello.cpp
-o hello
./hello
¶øÆäÖеÄ-o Ó¦¸Ã¾ÍÊÇÊä³öÒ»¸ö¿ÉÖ´ÐеÄÎļþ
±àÒë¶à¸öÎļþÎÒÃÇÔõô°ì£¿£¿£¿
À´¿´ÏÂÃæ³öÁËÈý¸öÎļþHello.h,
Hello.cpp, MyFirst.cpp
ÔÚg++
ÖÐÓÐÒ»¸ö²ÎÊý-c
¿ÉÒÔÖ»±àÒë²»Á¬½Ó£¬ÄÇôÎÒÃǾͿÉÒÔ°´ÈçÏÂ˳Ðò±àÒëÎļþ£¬
g++ -c
Hello.cpp - ......
#include <stdio.h>
int main ()
{
FILE *fp1;
fp1=fopen("test0.txt","rt");
if(fp1==NULL)
{
printf("can not open test0.txt\n");return 0;
} // {} necessary
fclose(fp1);// necessary
return 0;
} ......
Android±àÒë»·¾³±¾Éí±È½Ï¸´ÔÓ£¬ÇÒ²»ÏñÆÕͨµÄ±àÒë»·¾³£ºÖ»Óж¥²ãĿ¼Ï²ÅÓÐMakefileÎļþ£¬¶øÆäËûµÄÿ¸öcomponent¶¼Ê¹ÓÃͳһ±ê×¼µÄAndroid.mk. Android.mkÎļþ±¾ÉíÊDZȽϼòµ¥µÄ£¬²»¹ýËü²¢²»ÊÇÎÒÃÇÊìϤµÄMakefile£¬¶øÊǾ¹ýÁËAndroid×ÔÉí±àÒëϵͳµÄºÜ¶à´¦Àí£¬Òò´ËÒªÕæÕýÀíÇå³þÆäÖеÄÁªÏµ»¹±È½Ï¸´ÔÓ£¬²»¹ýÕâÖÖ·½Ê½µÄºÃ´¦ÔÚÓÚ£¬±àдһ¸öеÄAndroid.mkÀ´¸øAndroidÔö¼ÓÒ»¸öеÄComponent»á±È½Ï¼òµ¥¡£
±àÒëJava³ÌÐò¿ÉÒÔÖ±½Ó²ÉÓÃEclipseµÄ¼¯³É»·¾³À´Íê³É£¬ÕâÀï¾Í²»Öظ´ÁË¡£ÎÒÃÇÖ÷ÒªÕë¶ÔC/C++À´ËµÃ÷£¬ÏÂÃæÍ¨¹ýÒ»¸öСÀý×ÓÀ´ËµÃ÷£¬ÈçºÎÔÚAndroid ÖÐÔö¼ÓÒ»¸öC³ÌÐòµÄHello World£º
1. ÔÚ$(YOUR_ANDROID)/development Ŀ¼Ï´´½¨helloĿ¼£¬ÆäÖÐ$(YOUR_ANDROID)Ö¸AndroidÔ´´úÂëËùÔÚµÄĿ¼¡£
- # mkdir $(YOUR_ANDROID)/development/hello
2. ÔÚ$(YOUR_ANDROID)/development/hello/Ŀ¼±àдhello.cÎļþ£¬hello.cµÄÄÚÈݵ±È»¾ÍÊǾµäµÄHelloWorld³ÌÐò£º
#include
int main()
{
printf("Hello World!\n");
return 0;
}
3. ÔÚ$(YOUR_ANDROID)/development/hello/Ŀ¼±àдAndroid.mkÎļþ¡£ÕâÊÇAndroid MakefileµÄ±ê×¼ÃüÃû£¬²»Òª¸ü¸Ä¡£Android.mkÎļþµÄ¸ñÊ ......
Linux I2CºËÐÄ¡¢×ÜÏßÓëÉ豸Çý¶¯
×¢:
ÔÚlinux2.6.32°æ±¾ÖÐÓÐÕâÑùµÄ´úÂëÓë×¢ÊÍ:
struct i2c_driver {
unsigned int class;
/* Notifies the driver that a new bus has appeared or is about to be
* removed. You should avoid using this if you can, it will probably
* be removed in a near future.
*/
int (*attach_adapter)(struct i2c_adapter *);
int (*detach_adapter)(struct i2c_adapter *);
/* Standard driver model interfaces */
int (*probe)(struct i2c_client *, const struct i2c_device_id *);
int (*remove)(struct i2c_client *);
...
}
ÎÒµÄÀí½âÊÇ.а汾ÖÐÓÃprobeºÍremove´úÌæÁËÔÀ´µÄattach_adapterºÍdetach_adapter.
I2C×ÜÏß½ö½öʹÓÃSCL¡¢SDAÁ½¸ùÐźÅÏß¾ÍʵÏÖÁËÉ豸֮¼äµÄÊý¾Ý½»»¥£¬¼«´óµØ¼ò»¯¶ÔÓ²¼þ×ÊÔ´ºÍPCB°å²¼Ï߿ռäµÄÕ¼Óá£Òò´Ë£¬I2C×ÜÏß±»·Ç³£¹ã·ºµØÓ¦ÓÃÔÚEEPROM¡¢ÊµÊ±ÖÓ¡¢Ð¡ÐÍLCDµÈÉ豸ÓëCPU ......
Linux I2CºËÐÄ¡¢×ÜÏßÓëÉ豸Çý¶¯
×¢:
ÔÚlinux2.6.32°æ±¾ÖÐÓÐÕâÑùµÄ´úÂëÓë×¢ÊÍ:
struct i2c_driver {
unsigned int class;
/* Notifies the driver that a new bus has appeared or is about to be
* removed. You should avoid using this if you can, it will probably
* be removed in a near future.
*/
int (*attach_adapter)(struct i2c_adapter *);
int (*detach_adapter)(struct i2c_adapter *);
/* Standard driver model interfaces */
int (*probe)(struct i2c_client *, const struct i2c_device_id *);
int (*remove)(struct i2c_client *);
...
}
ÎÒµÄÀí½âÊÇ.а汾ÖÐÓÃprobeºÍremove´úÌæÁËÔÀ´µÄattach_adapterºÍdetach_adapter.
I2C×ÜÏß½ö½öʹÓÃSCL¡¢SDAÁ½¸ùÐźÅÏß¾ÍʵÏÖÁËÉ豸֮¼äµÄÊý¾Ý½»»¥£¬¼«´óµØ¼ò»¯¶ÔÓ²¼þ×ÊÔ´ºÍPCB°å²¼Ï߿ռäµÄÕ¼Óá£Òò´Ë£¬I2C×ÜÏß±»·Ç³£¹ã·ºµØÓ¦ÓÃÔÚEEPROM¡¢ÊµÊ±ÖÓ¡¢Ð¡ÐÍLCDµÈÉ豸ÓëCPU ......