Changeset 37049 for trunk/Ohana/src/opihi/cmd.basic/list.c
- Timestamp:
- Jul 17, 2014, 10:21:10 AM (12 years ago)
- File:
-
- 1 edited
-
trunk/Ohana/src/opihi/cmd.basic/list.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/opihi/cmd.basic/list.c
r36084 r37049 2 2 # define D_NLINES 100 3 3 static char prompt[] = ">> "; 4 5 static int set_list_varname (char *line, char *base, int N, int excelStyle);6 4 7 5 int list (int argc, char **argv) { … … 311 309 return (TRUE); 312 310 } 313 314 static int set_list_varname (char *line, char *base, int N, int excelStyle) {315 316 int i;317 318 // A-Z correspond to 0 - 25319 320 if (excelStyle) {321 float f = log(26.0);322 float g = (N == 0) ? 0.0 : log(1.0*N);323 int Ndigit = (int) (g / f) + 1;324 if (Ndigit > 10) {325 sprintf (line, "%s:ZZZZZZZZZZ", base);326 return FALSE;327 }328 char name[12];329 memset (name, 0, 12);330 for (i = 0; i < Ndigit; i++) {331 float Npow = Ndigit - i - 1;332 float g = pow(26.0, Npow);333 int V = (int) (N / g);334 name[i] = (Npow == 0.0) ? 'A' + V : 'A' + V - 1;335 N -= V * g;336 }337 sprintf (line, "%s:%s", base, name);338 } else {339 sprintf (line, "%s:%d", base, N);340 }341 return TRUE;342 }
Note:
See TracChangeset
for help on using the changeset viewer.
