const char *MSMBSDate::format(MSString& aString_,const char *format_) const { #ifdef MS_THREAD_SAFE_FUNCTIONS struct tm tms; #endif //MS_THREAD_SAFE_FUNCTIONS MSString aString(0,((format_!=0)?strlen(format_):0)+3); // __tm_zone, a member of struct tm for the sun architecture // must be initialized if the strftime format %Z is used. Can // get this value from localtime. time_t now=time(0); struct tm *pCalendarTime=MS_LOCALTIME(&now,&tms); MSMonth m; MSDay d; MSYear y; asMonthDayYear(m,d,y); pCalendarTime->tm_sec=0; pCalendarTime->tm_min=0; pCalendarTime->tm_hour=0; pCalendarTime->tm_mday=d; pCalendarTime->tm_mon=m-1; pCalendarTime->tm_year=y-1900; pCalendarTime->tm_wday=weekDay()==7?0:weekDay(); pCalendarTime->tm_yday=dayOfYear()-1; pCalendarTime->tm_isdst=-1; int numberOfChars; while ((numberOfChars=strftime((char*)aString.string(),aString.length(),format_,pCalendarTime))==0) { aString=MSString(0,2*aString.length()); } // remove the terminating null from strftime. strftime returns the number of characters // produced not including the terminating null character. aString=MSString(aString.string(),numberOfChars); aString_=aString.string(); return aString_; }
/* * Returns a list of scheduled items * @param * @return */ void TTaskScheduler::GetScheduledItems(vector<wstring>* answer){ IEnumWorkItems *pIEnum; HRESULT hr = pITS->Enum(&pIEnum); if (FAILED(hr)){ return; } LPWSTR *lpwszNames; DWORD dwFetchedTasks = 0; while (SUCCEEDED(pIEnum->Next(5, &lpwszNames, &dwFetchedTasks)) && (dwFetchedTasks != 0)){ while (dwFetchedTasks){ //wprintf(L"%s\n", lpwszNames[--dwFetchedTasks]); wstring aString(lpwszNames[--dwFetchedTasks]); answer->push_back(aString); char buffer[255]; sprintf(buffer, "Size is %d", answer->size()); OutputDebugString(buffer); CoTaskMemFree(lpwszNames[dwFetchedTasks]); } CoTaskMemFree(lpwszNames); } pIEnum->Release(); }
main() { RWCString aString("Hark! Hark! the lark"); cout << "Searching for expressions beginning with \'l\' in: " << endl << aString << endl << "Found: "; // A regular expression matching any lower-case word // starting with 'l': RWCRegexp reg("l[a-z]*"); cout << aString(reg) << endl; // Prints 'lark' return 0; }
void MSWidget::propertyToString(Atom target_,char *data_,int itemCount_) { if (target_==XA_ATOM) atomsFromData(data_,itemCount_); else if (target_==XA_STRING) { MSString aString(data_,itemCount_); _server->pasteBuffer(aString); } }
void SystemPath::parse( String const& systempathstring ) { if( systempathstring.empty() ) { return; } String aString( systempathstring ); eraseWhiteSpaces( aString ); String::size_type aCompStart( 0 ); // absolute path ( start with '/' ) if( aString[ 0 ] == DELIMITER ) { push_back( String( 1, DELIMITER ) ); ++aCompStart; } for ( String::size_type aCompEnd; aCompStart < aString.size(); aCompStart = aCompEnd + 1 ) { aCompEnd = aString.find_first_of( DELIMITER, aCompStart ); if ( aCompEnd == String::npos ) { aCompEnd = aString.size(); } String aComponent( aString.substr( aCompStart, aCompEnd - aCompStart ) ); if ( aComponent == ".." ) { if ( theComponents.size() == 1 && theComponents.front()[ 0 ] == DELIMITER ) { THROW_EXCEPTION( BadSystemPath, "Too many levels of retraction with .." ); } else if ( theComponents.empty() || theComponents.back() == ".." ) { theComponents.push_back( aComponent ); } else { theComponents.pop_back(); } } else if ( !aComponent.empty() && aComponent != "." ) { theComponents.push_back( aComponent ); } } if ( !aString.empty() && theComponents.empty() ) { theComponents.push_back( "." ); } }
MSStatus MSWidget::copyPrimary(const char *data_,int itemCount_) { if (ownSelection(XA_PRIMARY)==MSSuccess) { MSString aString(data_,itemCount_); _server->copyBuffer(aString); return MSSuccess; } return MSFailure; }
int main() { std::string aString("A simple string"); std::cout << aString << std::endl; print_function(aString.c_str()); return 0; }
// /// <summary> // /// Get double matrix from ptr // /// </summary> // internal static double[][] GetDoubleMatrixFromPtrLA(IntPtr pointer, int nRows, int nCols) // { // IntPtr[] rawRows = new IntPtr[nRows]; // double[][] oResult = new double[nRows][]; // Marshal.Copy(pointer, rawRows, 0, nRows); // for (int i = 0; i < nRows; i++) // { // oResult[i] = new double[nCols]; // Marshal.Copy(rawRows[i], oResult[i], 0, nCols); // } // for (int) // LA.FreeMatrix(pointer, nRows); // return oResult; // } // GetDoubleMatrixFromPtrLA(pointer, nRows, nCols) // // /// <summary> // /// Get int array from ptr // /// </summary> // internal static int[] GetIntArrayFromPtr(IntPtr pointer, int nLength) // { // int[] oResult = new int[nLength]; // Marshal.Copy(pointer, oResult, 0, nLength); // StructAnalysis.FreeVector(pointer); // return oResult; // } // GetIntArrayFromPtr(pointer, nLength) // // /// <summary> // /// Get int array from ptr // /// </summary> // internal static int[] GetIntArrayFromPtrLA(IntPtr pointer, int nLength) // { // int[] oResult = new int[nLength]; // Marshal.Copy(pointer, oResult, 0, nLength); // LA.FreeVector(pointer); // return oResult; // } // GetIntArrayFromPtr(pointer, nLength) // // // /// <summary> // /// Get int matrix from ptr // /// </summary> // internal static int[][] GetIntMatrixFromPtr(IntPtr pointer, int nRows, int nCols) // { // IntPtr[] rawRows = new IntPtr[nRows]; // int[][] oResult = new int[nRows][]; // Marshal.Copy(pointer, rawRows, 0, nRows); // for (int i = 0; i < nRows; i++) // { // oResult[i] = new int[nCols]; // Marshal.Copy(rawRows[i], oResult[i], 0, nCols); // } // for (int) // StructAnalysis.FreeMatrix(pointer, nRows); // return oResult; // } // GetIntMatrixFromPtr(pointer, nRows, nCols) // // /// <summary> // /// Get int matrix from ptr // /// </summary> // internal static int[][] GetIntMatrixFromPtrLA(IntPtr pointer, int nRows, int nCols) // { // IntPtr[] rawRows = new IntPtr[nRows]; // int[][] oResult = new int[nRows][]; // Marshal.Copy(pointer, rawRows, 0, nRows); // for (int i = 0; i < nRows; i++) // { // oResult[i] = new int[nCols]; // Marshal.Copy(rawRows[i], oResult[i], 0, nCols); // } // for (int) // LA.FreeMatrix(pointer, nRows); // return oResult; // } // GetIntMatrixFromPtr(pointer, nRows, nCols) // // /// <summary> /// Get string array from ptr /// </summary> vector<string> GetStringArrayFromPtr(IntPtr &pointer, int nStrings) { vector<string> oResult; oResult.resize(nStrings); char** stringRows = (char**) pointer; for(int i = 0; i < nStrings; i++) { char* oneString = stringRows[i]; string aString(oneString); oResult[i] = aString; } // LibStructural_freeMatrix(pointer, nStrings); //StructAnalysis::FreeMatrix(pointer, nStrings); return oResult; }
void FullID::parse( String const& fullidstring ) { // empty FullID string is invalid if( fullidstring == "" ) { THROW_EXCEPTION( BadID, "empty FullID string" ); } String aString( fullidstring ); eraseWhiteSpaces( aString ); // ignore leading white spaces String::size_type aFieldStart( 0 ); String::size_type aFieldEnd( aString.find_first_of( DELIMITER, aFieldStart ) ); if( aFieldEnd == String::npos ) { THROW_EXCEPTION( BadID, "no ':' in the FullID string [" + aString + "]" ); } String aTypeString( aString.substr( aFieldStart, aFieldEnd - aFieldStart ) ); theEntityType = EntityType( aTypeString ); aFieldStart = aFieldEnd + 1; aFieldEnd = aString.find_first_of( DELIMITER, aFieldStart ); if( aFieldEnd == String::npos ) { THROW_EXCEPTION( BadID, "only one ':' in the FullID string [" + aString + "]" ); } theSystemPath = SystemPath( aString.substr( aFieldStart, aFieldEnd - aFieldStart ) ); aFieldStart = aFieldEnd + 1; // drop trailing string after extra ':'(if this is FullPN), // or go to the end aFieldEnd = aString.find_first_of( DELIMITER, aFieldStart ); theID = aString.substr( aFieldStart, aFieldEnd - aFieldStart ); }
void GBGlobals::s_recordMarker(int mark,const char * const s) { s_CurrentMarkerNumbers.push_back(mark); simpleString aString(s); s_CurrentMarkerStrings.push_back(aString); };