Changeset 3b21c96
- Timestamp:
- Jan 16, 2025, 11:57:29 AM (2 months ago)
- Branches:
- master
- Children:
- f6f7b52
- Parents:
- 7aa246cb
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified doc/uC++toCFA/uC++toCFA.tex ¶
r7aa246cb r3b21c96 11 11 %% Created On : Wed Apr 6 14:53:29 2016 12 12 %% Last Modified By : Peter A. Buhr 13 %% Last Modified On : Fri Nov 15 09:55:34 202414 %% Update Count : 62 4913 %% Last Modified On : Thu Jan 16 11:49:47 2025 14 %% Update Count : 6281 15 15 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 16 16 … … 197 197 198 198 199 \section{Stream I/O}200 201 \CFA output streams automatically separate values and insert a newline at the end of the print.202 \begin{cquote}203 \begin{tabular}{@{}l|l@{}}204 \begin{uC++}205 #include <@iostream@>206 using namespace std;207 int i; double d; char c;208 cin >> i >> d >> c;209 cout << i << ' ' << d << ' ' << c | endl;210 \end{uC++}211 &212 \begin{cfa}213 #include <@fstream.hfa@>214 215 int i; double d; char c;216 sin | i | d | c;217 sout | i | d | c218 \end{cfa}219 \end{tabular}220 \end{cquote}221 222 223 199 \section{Looping} 224 200 … … 240 216 for ( i; 0 @-@~ 10 ) { ... } 241 217 \end{cfa} 242 \\ 243 \hline 218 \end{tabular} 219 \end{cquote} 220 221 \begin{cquote} 222 \begin{tabular}{@{}l|l@{}} 244 223 \begin{uC++} 245 224 int i = 0 … … 253 232 @else@ { ... } // i == 10 254 233 \end{cfa} 255 \\ 256 \hline 234 \end{tabular} 235 \end{cquote} 236 237 \begin{cquote} 238 \begin{tabular}{@{}l|l@{}} 257 239 \begin{uC++} 258 240 @L1:@ for ( ;; ) { … … 271 253 } 272 254 } 255 \end{cfa} 256 \end{tabular} 257 \end{cquote} 258 259 260 \section{Stream I/O} 261 262 \CFA output streams automatically separate values and insert a newline at the end of the print. 263 \begin{cquote} 264 \begin{tabular}{@{}l|l@{}} 265 \begin{uC++} 266 #include <@iostream@> 267 using namespace std; 268 int i; double d; char c; 269 cin >> i >> d >> c; 270 cout << i << ' ' << d << ' ' << c << endl; 271 \end{uC++} 272 & 273 \begin{cfa} 274 #include <@fstream.hfa@> 275 276 int i; double d; char c; 277 sin | i | d | c; 278 sout | i | d | c 279 \end{cfa} 280 \end{tabular} 281 \end{cquote} 282 To disable/enable automatic newline at the end of printing, use @nlOff@/@nlOn@ and @nl@. 283 \begin{cquote} 284 \begin{tabular}{@{}l|l@{}} 285 \begin{uC++} 286 287 for ( int i = 0; i < 5; i += 1 ) cout << i << ' '; 288 cout << @endl@; 289 290 0 1 2 3 4 291 \end{uC++} 292 & 293 \begin{cfa} 294 sout | @nlOff@; // disable auto nl 295 for ( i; 5 ) sout | i; 296 sout | @nl@; 297 sout | @nlOn@; // reenable auto nl 298 0 1 2 3 4 299 \end{cfa} 300 \end{tabular} 301 \end{cquote} 302 Floating-point numbers without a fraction print with a decimal point, which can be disabled with @nodp@. 303 \begin{cquote} 304 \begin{tabular}{@{}l|l@{}} 305 \begin{uC++} 306 cout << 3.0 << ' ' << showpoint << setprecision(0) << 3.0 << endl; 307 3 3. 308 \end{uC++} 309 & 310 \begin{cfa} 311 sout | @nodp( 3.0 )@ | 3.0; 312 3 3. 273 313 \end{cfa} 274 314 \end{tabular} … … 291 331 if ( ... ) @_Throw@ E( /* initialization */ ); 292 332 ... 293 } @_CatchResume@( E & ) { ... // reference 294 } catch( E & ) { ... 295 } catch( ... ) { ... // catch any 296 } _Finally { ... 297 } 333 } @_CatchResume@( E & /* reference */ ) { ... } 334 catch( E & ) { ... } 335 catch( ... /* catch any */ ) { ... } 336 _Finally { ... } 298 337 \end{uC++} 299 338 & … … 308 347 if ( ... ) @throw@ @ExceptionInst@( E, /* intialization */ ); 309 348 ... 310 } @catchResume@( E * ) { ... // pointer 311 } catch( E * ) { ... 312 } catch( exception_t * ) { ... // catch any 313 } finally { ... 314 } 349 } @catchResume@( E @*@ /* pointer */ ) { ... } 350 catch( E * ) { ... } 351 catch( exception_t @*@ /* catch any */ ) { ... } 352 finally { ... } 315 353 \end{cfa} 316 354 \end{tabular} … … 330 368 ... suspend(); ... 331 369 } 332 } @_CatchResume@( E & ) { // reference 333 ... 334 } catch( E & ) { 335 ... 336 } 370 } @_CatchResume@( E & /* reference */ ) { ... } 371 catch( E & ) { ... } 337 372 } 338 373 \end{uC++} … … 346 381 ... suspendPoll ... 347 382 disable_ehm(); 348 } @catchResume@( E * ) { // pointer 349 ... 350 } catch( E & ) { 351 ... 352 } 383 } @catchResume@( E * ) { ... } 384 catch( E & ) { ... } 353 385 } 354 386 \end{cfa}
Note: See TracChangeset
for help on using the changeset viewer.