main( ) { char inp; char *T[255]; char *S[255]; struct sstring *s1,*s2,*res; int pos,len; printf("1-------strassing\n"); printf("2-------strlength\n"); printf("3-------strcompare\n"); printf("4-------clearstring\n"); printf("5-------concat\n"); printf("6-------substring\n"); printf("*-------exit!"); printf("please in put1--6 or *\n\n") while(1){ scanf("%c",&inp); switch(inp){ case 1:{ scanf("%s",&S); res->ch=strassign(s1,S); if(res->ch==0) printf("the string is:%s",s1->ch); else printf("error"); } case 2: { scanf("%s",&S); s1->length=strlen(S); strcpy(s1->ch,S); res->ch=strlength(S); printf("the string is:%d\n",s1->length);} case 3:{ scanf("%s",&S); scanf("%s",&T); s1->length=strlen(S); strcpy(s1->ch,S); s2->length=strlen(T); strcpy(s2->ch,T); res->ch=strcompare(S,T); switch(res){ case 0: printf("two strings are equle"); case 1: printf("the first string > the second string"); case -1: printf("the first string < the second string");} } case 4:{ res->ch=clearstring(s1); res->ch=clearstring(s2); printf("the string is NULL");} case 5:{ scanf("%s",&S); scanf("%s",&T); strcat(&s1,S,T); if(res==0) printf("the string is:%s",s1->ch); } case 6: { scanf("%s_%d_%d",S,&pos,&len); s2->length=strlen(S); strcpy(s2->ch,S); res->ch=substring(s1,s2,pos,len); if(res==0) printf("the string is:%s",s1->ch); else printf("error");} case *: exit; } } }
int encodek2header (unsigned char *buf_ptr, K2EvtFile *hdr) { unsigned char *ptr; int i, nch, nvt; ptr = buf_ptr; localstring2k2 (&ptr, hdr->id, 3); localbyte2k2 (&ptr, &(hdr->instrumentCode)); local22k2 (&ptr, &(hdr->headerVersion)); local22k2 (&ptr, &(hdr->headerBytes)); localbyte2k2 (&ptr, &(hdr->ro_misc.a2dBits)); localbyte2k2 (&ptr, &(hdr->ro_misc.sampleBytes)); localbyte2k2 (&ptr, &(hdr->ro_misc.restartSource)); clearstring (&ptr, 3); local22k2 (&ptr, &(hdr->ro_misc.installedChan)); local22k2 (&ptr, &(hdr->ro_misc.maxChannels)); local22k2 (&ptr, &(hdr->ro_misc.sysBlkVersion)); local22k2 (&ptr, &(hdr->ro_misc.bootBlkVersion)); local22k2 (&ptr, &(hdr->ro_misc.appBlkVersion)); local22k2 (&ptr, &(hdr->ro_misc.dspBlkVersion)); local22k2 (&ptr, &(hdr->ro_misc.batteryVoltage)); local22k2 (&ptr, &(hdr->ro_misc.crc)); local22k2 (&ptr, &(hdr->ro_misc.flags)); local22k2 (&ptr, &(hdr->ro_misc.temperature)); clearstring (&ptr, 22); localbyte2k2 (&ptr, &(hdr->ro_timing.clockSource)); localbyte2k2 (&ptr, &(hdr->ro_timing.gpsStatus)); localbyte2k2 (&ptr, &(hdr->ro_timing.gpsSOH)); clearstring (&ptr, 5); local22k2 (&ptr, &(hdr->ro_timing.gpsLockFailCount)); local22k2 (&ptr, &(hdr->ro_timing.gpsUpdateRTCCount)); local22k2 (&ptr, &(hdr->ro_timing.acqDelay)); local22k2 (&ptr, &(hdr->ro_timing.gpsLatitude)); local22k2 (&ptr, &(hdr->ro_timing.gpsLongitude)); local22k2 (&ptr, &(hdr->ro_timing.gpsAltitude)); local22k2 (&ptr, &(hdr->ro_timing.dacCount)); clearstring (&ptr, 2); local22k2 (&ptr, &(hdr->ro_timing.gpsLastDrift[0])); local22k2 (&ptr, &(hdr->ro_timing.gpsLastDrift[1])); local42k2 (&ptr, &(hdr->ro_timing.gpsLastTurnOnTime[0])); local42k2 (&ptr, &(hdr->ro_timing.gpsLastTurnOnTime[1])); local42k2 (&ptr, &(hdr->ro_timing.gpsLastUpdateTime[0])); local42k2 (&ptr, &(hdr->ro_timing.gpsLastUpdateTime[1])); local42k2 (&ptr, &(hdr->ro_timing.gpsLastLockTime[0])); local42k2 (&ptr, &(hdr->ro_timing.gpsLastLockTime[1])); clearstring (&ptr, 16); nch = K2EVT_MAX_K2_CHANNELS; nvt = K2EVT_STREAM_K2_MAX_VOTERS; for (i=0; i<nch; i++) { local42k2 (&ptr, &(hdr->ro_channel[i].maxPeak)); local42k2 (&ptr, &(hdr->ro_channel[i].maxPeakOffset)); local42k2 (&ptr, &(hdr->ro_channel[i].minPeak)); local42k2 (&ptr, &(hdr->ro_channel[i].minPeakOffset)); local42k2 (&ptr, &(hdr->ro_channel[i].mean)); local42k2 (&ptr, &(hdr->ro_channel[i].aqOffset)); clearstring (&ptr, 12); } local42k2 (&ptr, &(hdr->ro_stream.startTime)); local42k2 (&ptr, &(hdr->ro_stream.triggerTime)); local42k2 (&ptr, &(hdr->ro_stream.duration)); local22k2 (&ptr, &(hdr->ro_stream.errors)); local22k2 (&ptr, &(hdr->ro_stream.flags)); local22k2 (&ptr, &(hdr->ro_stream.startTimeMsec)); local22k2 (&ptr, &(hdr->ro_stream.triggerTimeMsec)); local42k2 (&ptr, &(hdr->ro_stream.nscans)); local42k2 (&ptr, &(hdr->ro_stream.triggerBitMap)); clearstring (&ptr, 4); local22k2 (&ptr, &(hdr->rw_misc.serialNumber)); local22k2 (&ptr, &(hdr->rw_misc.nchannels)); localstring2k2 (&ptr, hdr->rw_misc.stnID, K2EVT_STN_ID_LENGTH); localstring2k2 (&ptr, hdr->rw_misc.comment, K2EVT_COMMENT_LENGTH); local22k2 (&ptr, &(hdr->rw_misc.elevation)); local42k2 (&ptr, &(hdr->rw_misc.latitude)); local42k2 (&ptr, &(hdr->rw_misc.longitude)); local22k2 (&ptr, &(hdr->rw_misc.userCodes[0])); local22k2 (&ptr, &(hdr->rw_misc.userCodes[1])); local22k2 (&ptr, &(hdr->rw_misc.userCodes[2])); local22k2 (&ptr, &(hdr->rw_misc.userCodes[3])); localbyte2k2 (&ptr, &(hdr->rw_misc.cutlerCode)); localbyte2k2 (&ptr, &(hdr->rw_misc.minBatteryVoltage)); localbyte2k2 (&ptr, &(hdr->rw_misc.cutler_decimation)); localbyte2k2 (&ptr, &(hdr->rw_misc.cutler_irig_type)); local42k2 (&ptr, &(hdr->rw_misc.cutler_bitmap)); local42k2 (&ptr, &(hdr->rw_misc.channel_bitmap)); localbyte2k2 (&ptr, &(hdr->rw_misc.cutler_protocol)); localstring2k2 (&ptr, hdr->rw_misc.siteID, 17); localbyte2k2 (&ptr, &(hdr->rw_misc.externalTrigger)); localbyte2k2 (&ptr, &(hdr->rw_misc.networkFlag)); localbyte2k2 (&ptr, &(hdr->rw_timing.gpsTurnOnInterval)); localbyte2k2 (&ptr, &(hdr->rw_timing.gpsMaxTurnOnTime)); clearstring (&ptr, 6); local22k2 (&ptr, &(hdr->rw_timing.localOffset)); clearstring (&ptr, 2 + 2 + 2); clearstring (&ptr, 4 + 4 + 4 + 4); for (i=0; i<nch; i++) { localstring2k2 (&ptr, hdr->rw_channel[i].id, K2EVT_CHANNEL_ID_LENGTH); clearstring (&ptr, 1); local22k2 (&ptr, &(hdr->rw_channel[i].sensorSerialNumberExt)); local22k2 (&ptr, &(hdr->rw_channel[i].north)); local22k2 (&ptr, &(hdr->rw_channel[i].east)); local22k2 (&ptr, &(hdr->rw_channel[i].up)); local22k2 (&ptr, &(hdr->rw_channel[i].altitude)); local22k2 (&ptr, &(hdr->rw_channel[i].azimuth)); local22k2 (&ptr, &(hdr->rw_channel[i].sensorType)); local22k2 (&ptr, &(hdr->rw_channel[i].sensorSerialNumber)); local22k2 (&ptr, &(hdr->rw_channel[i].gain)); localbyte2k2 (&ptr, &(hdr->rw_channel[i].triggerType)); localbyte2k2 (&ptr, &(hdr->rw_channel[i].iirTriggerFilter)); localbyte2k2 (&ptr, &(hdr->rw_channel[i].StaSeconds)); localbyte2k2 (&ptr, &(hdr->rw_channel[i].LtaSeconds)); local22k2 (&ptr, &(hdr->rw_channel[i].StaLtaRatio)); localbyte2k2 (&ptr, &(hdr->rw_channel[i].StaLtaPercent)); clearstring (&ptr, 1); local42k2 (&ptr, &(hdr->rw_channel[i].fullscale)); local42k2 (&ptr, &(hdr->rw_channel[i].sensitivity)); local42k2 (&ptr, &(hdr->rw_channel[i].damping)); local42k2 (&ptr, &(hdr->rw_channel[i].naturalFrequency)); local42k2 (&ptr, &(hdr->rw_channel[i].triggerThreshold)); local42k2 (&ptr, &(hdr->rw_channel[i].detriggerThreshold)); local42k2 (&ptr, &(hdr->rw_channel[i].alarmTriggerThreshold)); clearstring (&ptr, 16); } localbyte2k2 (&ptr, &(hdr->rw_stream.filterFlag)); localbyte2k2 (&ptr, &(hdr->rw_stream.primaryStorage)); localbyte2k2 (&ptr, &(hdr->rw_stream.secondaryStorage)); clearstring (&ptr, 3); local22k2 (&ptr, &(hdr->rw_stream.CheckinTime)); local22k2 (&ptr, &(hdr->rw_stream.eventNumber)); local22k2 (&ptr, &(hdr->rw_stream.sps)); local22k2 (&ptr, &(hdr->rw_stream.apw)); local22k2 (&ptr, &(hdr->rw_stream.preEvent)); local22k2 (&ptr, &(hdr->rw_stream.postEvent)); local22k2 (&ptr, &(hdr->rw_stream.minRunTime)); local22k2 (&ptr, &(hdr->rw_stream.VotesToTrigger)); local22k2 (&ptr, &(hdr->rw_stream.VotesToDetrigger)); clearstring (&ptr, 1); localbyte2k2 (&ptr, &(hdr->rw_stream.FilterType)); localbyte2k2 (&ptr, &(hdr->rw_stream.DataFmt)); clearstring (&ptr, 1); local22k2 (&ptr, &(hdr->rw_stream.Timeout)); local22k2 (&ptr, &(hdr->rw_stream.TxBlkSize)); local22k2 (&ptr, &(hdr->rw_stream.BufferSize)); local22k2 (&ptr, &(hdr->rw_stream.SampleRate)); local42k2 (&ptr, &(hdr->rw_stream.TxChanMap)); clearstring (&ptr, 4 + 4); for (i=0; i<nvt; i++) { localbyte2k2 (&ptr, &(hdr->rw_stream.voterInfo[i].type)); localbyte2k2 (&ptr, &(hdr->rw_stream.voterInfo[i].number)); local22k2 (&ptr, &(hdr->rw_stream.voterInfo[i].weight)); } localstring2k2 (&ptr, hdr->rw_modem.initCmd, K2EVT_MODEM_INITCMD_LENGTH); localstring2k2 (&ptr, hdr->rw_modem.dialingPrefix, K2EVT_MODEM_DIALPREFIX_LENGTH); localstring2k2 (&ptr, hdr->rw_modem.dialingSuffix, K2EVT_MODEM_DIALSUFFIX_LENGTH); localstring2k2 (&ptr, hdr->rw_modem.hangupCmd, K2EVT_MODEM_HANGUPCMD_LENGTH); localstring2k2 (&ptr, hdr->rw_modem.autoAnswerOnCmd, K2EVT_MODEM_AUTOANSWERON_LENGTH); localstring2k2 (&ptr, hdr->rw_modem.autoAnswerOffCmd, K2EVT_MODEM_AUTOANSWEROFF_LENGTH); for (i=0; i<K2EVT_MODEM_PHONES; i++) { localstring2k2 (&ptr, hdr->rw_modem.phoneNumber[i], K2EVT_MODEM_PHONENUMBER_LENGTH); } localbyte2k2 (&ptr, &(hdr->rw_modem.waitForConnection)); localbyte2k2 (&ptr, &(hdr->rw_modem.pauseBetweenCalls)); localbyte2k2 (&ptr, &(hdr->rw_modem.maxDialAttempts)); localbyte2k2 (&ptr, &(hdr->rw_modem.cellShare)); localbyte2k2 (&ptr, &(hdr->rw_modem.cellOnTime)); localbyte2k2 (&ptr, &(hdr->rw_modem.cellWarmupTime)); for (i=0; i<5; i++) { local22k2 (&ptr, &(hdr->rw_modem.cellStartTime[i])); } clearstring (&ptr, 4); local22k2 (&ptr, &(hdr->rw_modem.flags)); localstring2k2 (&ptr, hdr->rw_modem.calloutMsg, 46); return (0); }