Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

flashpolicyd c °æ±¾

#include <stdio.h>
#include <stdlib.h>
#include <syslog.h>
#include <signal.h>
#include <unistd.h>
#include <string.h>
#include <getopt.h>
#define MAX_READFILE 24
#define MAX_INPUTFILE 10240
char *file ;
void time_out(){
syslog(LOG_INFO,"read input timeout!");
exit(1);
}
void
usage(void)
/* print a help message about command line options and exit */
{
syslog(LOG_INFO,"system error:be short of params!");
fprintf (stdout,"system error:be short of params!");
exit(1);
}
char *f_opt_arg;
struct option longopts[] = {
{ "file",required_argument,NULL,'f'},
{ 0, 0, 0, 0}
};
void
parseopt(int argc, char *argv[])
/* set options */
{
int c;
/* constants and variables defined by command line */

while(1) {
c = getopt_long(argc, argv, ":f:", longopts, NULL);
if (c == EOF) break;
switch (c) {
case 'f':
file = optarg; break;

case ':':
usage();

case '?':
usage();

default:
usage();
}
}
}
int main(int argc ,char **argv)
{
/* interpret command line options */
parseopt(argc, argv);
FILE *fd ;
char xmlnote[MAX_INPUTFILE+1] ;
syslog(LOG_INFO,"start read xml:%s",file);
if((fd = fopen(file ,"r")) ==NULL){
syslog(LOG_INFO,"not found xml:%s",file);
exit(1);
}

int ch;
int counter=0;
while ( (ch = fgetc(fd)) != EOF ) {
xmlnote[counter] = ch;
counter++;
}
fclose(fd);
char *base ="<policy-file-request/>\000";
char input[MAX_READFILE+1] ;

signal(SIGALRM,time_out);
alarm(1);
char *r = fgets(input, MAX_READFILE, stdin);
alarm(0);

int cmp = memcmp(base,input,MAX_READFILE);
if( cmp<0 || cmp>0){
syslog(LOG_INFO,"read input bad format!");
exit(1);
}

if ( r!= NULL ) {
syslog(LOG_INFO,"end read input:%s",input);
fprintf (stdout,xmlnote);
}
return 0;
}


Ïà¹ØÎĵµ£º

ǶÈëʽ¿ª·¢ÖÐC³ÌÐòÓÅ»¯Ç³Îö

ǶÈëʽϵͳÓÉÓÚÊܹ¦ºÄ¡¢³É±¾ºÍÌå»ýµÈÒòËØµÄÖÆÔ¼£¬Ç¶Èëʽ΢´¦ÀíÆ÷µÄ´¦ÀíÄÜÁ¦Óë×ÀÃæÏµÍ³´¦ÀíÆ÷Ïà±ÈÒ²´æÔڽϴó²î¾à£¬¹ÊǶÈëʽϵͳ¶Ô³ÌÐòÔËÐеĿռäºÍʱ¼äÒªÇó¸üΪ¿Á¿Ì¡£    
ͨ³££¬ÐèÒª¶ÔǶÈëʽӦÓóÌÐò½øÐÐÐÔÄÜÓÅ»¯£¬ÒÔÂú×ãǶÈëʽӦÓõÄÐÔÄÜÐèÇó¡£
   
1 ǶÈëʽ³ÌÐòÓÅ»¯µÄÀàÐÍ
&nbs ......

C/C++ÓïÑÔvoid¼°voidÖ¸ÕëÉî²ã̽Ë÷

¡¡¡¡1.¸ÅÊö
¡¡¡¡Ðí¶à³õѧÕß¶ÔC/C++ÓïÑÔÖеÄvoid¼°voidÖ¸ÕëÀàÐͲ»ÉõÀí½â£¬Òò´ËÔÚʹÓÃÉϳöÏÖÁËһЩ´íÎó¡£±¾ÎĽ«¶Ôvoid¹Ø¼ü×ÖµÄÉî¿Ìº¬Òå½øÐнâ˵£¬²¢ÏêÊövoid¼°voidÖ¸ÕëÀàÐ͵ÄʹÓ÷½·¨Óë¼¼ÇÉ¡£
¡¡¡¡2.voidµÄº¬Òå
¡¡¡¡voidµÄ×ÖÃæÒâ˼ÊÇ“ÎÞÀàÐÍ”£¬void *ÔòΪ“ÎÞÀàÐÍÖ¸Õ딣¬void *¿ÉÒÔÖ¸ÏòÈκÎÀàÐ͵ÄÊ ......

¾­µäC/C++ÃæÊÔÌ⣨Èý£©

1) Ê²Ã´ÊÇÔ¤±àÒ룬ºÎʱÐèÒªÔ¤±àÒ룺×ÜÊÇʹÓò»¾­³£¸Ä¶¯µÄ´óÐÍ´úÂëÌå¡£
³ÌÐòÓɶà¸öÄ£¿é×é³É£¬ËùÓÐÄ£¿é¶¼Ê¹ÓÃÒ»×é±ê×¼µÄ°üº¬ÎļþºÍÏàͬµÄ±àÒëÑ¡Ïî¡£ÔÚÕâÖÖÇé¿öÏ£¬¿ÉÒÔ½«ËùÓаüº¬ÎļþÔ¤±àÒëΪһ¸öÔ¤±àÒëÍ·¡£
2) char * const p;
¡¡¡¡char const * p
¡¡¡¡const char *p ......

¾­µäC/C++ÃæÊÔÌ⣨Èý£©2

32)
¡¡¡¡int main()
¡¡¡¡{
¡¡¡¡¡¡int x=3;
¡¡¡¡¡¡printf("%d",x);
¡¡¡¡¡¡return 1;
¡¡¡¡}
¡¡¡¡Îʺ¯Êý¼ÈÈ»²»»á±»ÆäËüº¯Êýµ÷Óã¬ÎªÊ²Ã´Òª·µ»Ø1£¿
¡¡¡¡mianÖУ¬c±ê×¼ÈÏΪ0±íʾ³É¹¦£¬·Ç0±íʾ´íÎó¡£¾ßÌåµÄÖµÊÇijÖоßÌå³ö´íÐÅÏ¢
33) Òª¶Ô¾ø¶ÔµØÖ·0x100000¸³Öµ£¬ÎÒÃÇ¿ÉÒÔÓÃ(unsigned int*)0x100 ......

¾­µäC/C++ÃæÊÔÌ⣨Î壩

ÄÜ£¬¾Ö²¿»áÆÁ±ÎÈ«¾Ö¡£ÒªÓÃÈ«¾Ö±äÁ¿£¬ÐèҪʹÓÃ"::"
¾Ö²¿±äÁ¿¿ÉÒÔÓëÈ«¾Ö±äÁ¿Í¬Ãû£¬ÔÚº¯ÊýÄÚÒýÓÃÕâ¸ö±äÁ¿Ê±£¬»áÓõ½Í¬ÃûµÄ¾Ö²¿±äÁ¿£¬¶ø²»»áÓõ½È«¾Ö±äÁ¿¡£¶ÔÓÚÓÐЩ±àÒëÆ÷¶øÑÔ£¬ÔÚͬһ¸öº¯ÊýÄÚ¿ÉÒÔ¶¨Òå¶à¸öͬÃûµÄ¾Ö²¿±äÁ¿£¬±ÈÈçÔÚÁ½¸öÑ­»·ÌåÄÚ¶¼¶¨ÒåÒ»¸öͬÃûµÄ¾Ö²¿±äÁ¿£¬¶øÄǸö¾Ö²¿±äÁ¿µÄ×÷ÓÃÓò¾ÍÔÚÄǸöÑ­»·ÌåÄÚ¡£
2¡¢ÈçºÎÒýÓ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ